{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import torch.nn.functional as F\n",
    "import torch.optim as optim\n",
    "import torchvision\n",
    "\n",
    "from torch.utils.data import DataLoader"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [],
   "source": [
    "if torch.cuda.is_available():\n",
    "    device=torch.device(\"cuda\")\n",
    "else:\n",
    "    device=torch.device(\"cpu\")\n",
    "\n",
    "mean = [0.5070751592371323, 0.48654887331495095, 0.4409178433670343]\n",
    "std = [0.2673342858792401, 0.2564384629170883, 0.27615047132568404]\n",
    " \n",
    "transforms_fn = torchvision.transforms.Compose([\n",
    "    torchvision.transforms.RandomHorizontalFlip(),  # 随机水平翻转\n",
    "    torchvision.transforms.RandomVerticalFlip(),  # 随机垂直翻转\n",
    "    torchvision.transforms.RandomRotation(10),  # 随机旋转\n",
    "    torchvision.transforms.ToTensor(),\n",
    "    torchvision.transforms.Normalize(mean, std)\n",
    "])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Files already downloaded and verified\n",
      "Files already downloaded and verified\n"
     ]
    }
   ],
   "source": [
    "#训练集\n",
    "train_dataset=torchvision.datasets.CIFAR100('./data',train=True,transform=transforms_fn,download=True)\n",
    "#测试集\n",
    "test_dataset=torchvision.datasets.CIFAR100('./data',train=False,transform=transforms_fn,download=True)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "train_loader= DataLoader(train_dataset, batch_size=128, shuffle=True, num_workers=4)\n",
    "test_loader = DataLoader(test_dataset, batch_size=128, shuffle=True, num_workers=4)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Multi-Head Self-Attention\n",
    "Bottleneck Transformer 中使用的 MHSA 结构。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "heads = 2\n",
    "class MHSA(nn.Module):\n",
    "    def __init__(self, n_dims, width=2, height=2, heads=heads):\n",
    "        super(MHSA, self).__init__()\n",
    "        self.heads = heads\n",
    "\n",
    "        self.query = nn.Conv2d(n_dims, n_dims, kernel_size=1)\n",
    "        self.key = nn.Conv2d(n_dims, n_dims, kernel_size=1)\n",
    "        self.value = nn.Conv2d(n_dims, n_dims, kernel_size=1)\n",
    "\n",
    "        self.rel_h = nn.Parameter(torch.randn([1, heads, n_dims // heads, 1, height]), requires_grad=True)\n",
    "        self.rel_w = nn.Parameter(torch.randn([1, heads, n_dims // heads, width, 1]), requires_grad=True)\n",
    "\n",
    "        self.softmax = nn.Softmax(dim=-1)\n",
    "\n",
    "    def forward(self, x):\n",
    "        n_batch, C, width, height = x.size()\n",
    "        q = self.query(x).view(n_batch, self.heads, C // self.heads, -1)\n",
    "        k = self.key(x).view(n_batch, self.heads, C // self.heads, -1)\n",
    "        v = self.value(x).view(n_batch, self.heads, C // self.heads, -1)\n",
    "\n",
    "        content_content = torch.matmul(q.permute(0, 1, 3, 2), k)\n",
    "\n",
    "        content_position = (self.rel_h + self.rel_w).view(1, self.heads, C // self.heads, -1).permute(0, 1, 3, 2)\n",
    "        content_position = torch.matmul(content_position, q)\n",
    "\n",
    "        energy = content_content + content_position\n",
    "        attention = self.softmax(energy)\n",
    "\n",
    "        out = torch.matmul(v, attention.permute(0, 1, 3, 2))\n",
    "        out = out.view(n_batch, C, width, height)\n",
    "\n",
    "        return out"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### 定义残差块ResBlock"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "class ResBlock(nn.Module):\n",
    "    def __init__(self,inchannel,outchannel,stride=1):\n",
    "        super(ResBlock, self).__init__()\n",
    "        #定义残差块里连续的2个卷积层\n",
    "        self.block_conv=nn.Sequential(\n",
    "            nn.Conv2d(inchannel,outchannel,kernel_size=3,stride=stride,padding=1),\n",
    "            nn.BatchNorm2d(outchannel),\n",
    "            nn.ReLU(),\n",
    "            # nn.MaxPool2d(2),\n",
    "            nn.Conv2d(outchannel,outchannel,kernel_size=3,stride=1,padding=1),\n",
    "            nn.BatchNorm2d(outchannel)\n",
    "        )\n",
    " \n",
    "        # shortcut 部分\n",
    "        # 由于存在维度不一致的情况 所以分情况\n",
    "        self.shortcut = nn.Sequential()\n",
    "        if stride != 1 or inchannel != outchannel:\n",
    "            self.shortcut = nn.Sequential(\n",
    "                # 卷积核为1 进行升降维\n",
    "                # 注意跳变时 都是stride!=1的时候 也就是每次输出信道升维的时候\n",
    "                nn.Conv2d(inchannel, outchannel, kernel_size=1, stride=stride, bias=False),\n",
    "                nn.BatchNorm2d(outchannel)\n",
    "            )\n",
    " \n",
    "    def forward(self,x):\n",
    "        out1=self.block_conv(x)\n",
    "        out2=self.shortcut(x)+out1\n",
    "        out2=F.relu(out2) #F.relu()是函数调用，一般使用在foreward函数里。而nn.ReLU()是模块调用，一般在定义网络层的时候使用\n",
    "        return out2"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### Bottleneck Transformer\n",
    "在 Multi-Head Self-Attention 结构前后加上1 × 1卷积就得到了 Bottleneck Transformer."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "class Bottleneck(nn.Module):\n",
    "    expansion = 2\n",
    "\n",
    "    def __init__(self, in_planes, planes, stride=1, heads=heads, mhsa=False, resolution=None):\n",
    "        super(Bottleneck, self).__init__()\n",
    "\n",
    "        self.conv1 = nn.Conv2d(in_planes, planes, kernel_size=1, bias=False)\n",
    "        self.bn1 = nn.BatchNorm2d(planes)\n",
    "        if not mhsa:\n",
    "            self.conv2 = nn.Conv2d(planes, planes, kernel_size=3, padding=1, stride=stride, bias=False)\n",
    "        else:\n",
    "            self.conv2 = nn.ModuleList()\n",
    "            self.conv2.append(MHSA(planes, width=int(resolution[0]), height=int(resolution[1]), heads=heads))\n",
    "            if stride == 2:\n",
    "                self.conv2.append(nn.AvgPool2d(2, 2))\n",
    "            self.conv2 = nn.Sequential(*self.conv2)\n",
    "        self.bn2 = nn.BatchNorm2d(planes)\n",
    "        self.conv3 = nn.Conv2d(planes, self.expansion * planes, kernel_size=1, bias=False)\n",
    "        self.bn3 = nn.BatchNorm2d(self.expansion * planes)\n",
    "\n",
    "        self.shortcut = nn.Sequential()\n",
    "        if stride != 1 or in_planes != self.expansion*planes:\n",
    "            self.shortcut = nn.Sequential(\n",
    "                nn.Conv2d(in_planes, self.expansion*planes, kernel_size=1, stride=stride),\n",
    "                nn.BatchNorm2d(self.expansion*planes)\n",
    "            )\n",
    "\n",
    "    def forward(self, x):\n",
    "        out = F.relu(self.bn1(self.conv1(x)))\n",
    "        out = F.relu(self.bn2(self.conv2(out)))\n",
    "        out = self.bn3(self.conv3(out))\n",
    "        out += self.shortcut(x)\n",
    "        out = F.relu(out)\n",
    "        return out"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "### ResNet"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "class ResNet(nn.Module):\n",
    "    def __init__(self, block, num_blocks, num_classes=100, resolution=(32, 32), heads=heads):\n",
    "        super(ResNet, self).__init__()\n",
    "        self.in_planes = 64\n",
    "        self.resolution = list(resolution)\n",
    "\n",
    "        # self.conv1 = nn.Conv2d(3, 64, kernel_size=7, stride=2, padding=3, bias=False)\n",
    "        self.conv1 = nn.Conv2d(3, 64, kernel_size=3, stride=1, padding=1)\n",
    "        self.bn1 = nn.BatchNorm2d(64)\n",
    "        self.relu = nn.ReLU(inplace=True)\n",
    "        self.maxpool = nn.MaxPool2d(kernel_size=1, stride=1, padding=0) # 64\n",
    "\n",
    "        self.layer1 = self._make_layer(block, 64, 2, stride=1)\n",
    "        self.layer2 = self._make_layer(block, 128, 2, stride=2)\n",
    "        self.layer3 = self._make_layer(block, 256, 2, stride=2)\n",
    "        self.layer4 = self._make_layer(block, 512, 2, stride=2, heads=heads)\n",
    "\n",
    "        self.avgpool = nn.AdaptiveAvgPool2d((1, 1))\n",
    "        self.fc = nn.Sequential(\n",
    "            nn.Dropout(0.3), # All architecture deeper than ResNet-200 dropout_rate: 0.2\n",
    "            nn.Linear(512 * block.expansion, num_classes)\n",
    "        )\n",
    "\n",
    "    def _make_layer(self, block, planes, num_blocks, stride=1, heads=heads, mhsa=False):\n",
    "        strides = [stride] + [1]*(num_blocks-1)\n",
    "        layers = []\n",
    "        for idx, stride in enumerate(strides):\n",
    "            layers.append(block(self.in_planes, planes, stride, heads, mhsa, self.resolution))\n",
    "            if stride == 2:\n",
    "                self.resolution[0] /= 2\n",
    "                self.resolution[1] /= 2\n",
    "            self.in_planes = planes * block.expansion\n",
    "        return nn.Sequential(*layers)\n",
    "\n",
    "    def forward(self, x):\n",
    "        out = self.relu(self.bn1(self.conv1(x)))\n",
    "        out = self.maxpool(out)\n",
    "\n",
    "        out = self.layer1(out)\n",
    "        out = self.layer2(out)\n",
    "        out = self.layer3(out)\n",
    "        out = self.layer4(out)\n",
    "\n",
    "        out = self.avgpool(out)\n",
    "        out = torch.flatten(out, 1)\n",
    "        out = self.fc(out)\n",
    "        return out\n",
    "\n",
    "def ResNet50(num_classes=100, resolution=(32, 32), heads=heads):\n",
    "    return ResNet(Bottleneck, [3, 4, 6, 3], num_classes=num_classes, resolution=resolution, heads=heads)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "ResNet(\n",
      "  (conv1): Conv2d(3, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))\n",
      "  (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "  (relu): ReLU(inplace=True)\n",
      "  (maxpool): MaxPool2d(kernel_size=1, stride=1, padding=0, dilation=1, ceil_mode=False)\n",
      "  (layer1): Sequential(\n",
      "    (0): Bottleneck(\n",
      "      (conv1): Conv2d(64, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(64, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential(\n",
      "        (0): Conv2d(64, 128, kernel_size=(1, 1), stride=(1, 1))\n",
      "        (1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      )\n",
      "    )\n",
      "    (1): Bottleneck(\n",
      "      (conv1): Conv2d(128, 64, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(64, 64, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(64, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(64, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential()\n",
      "    )\n",
      "  )\n",
      "  (layer2): Sequential(\n",
      "    (0): Bottleneck(\n",
      "      (conv1): Conv2d(128, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(128, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential(\n",
      "        (0): Conv2d(128, 256, kernel_size=(1, 1), stride=(2, 2))\n",
      "        (1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      )\n",
      "    )\n",
      "    (1): Bottleneck(\n",
      "      (conv1): Conv2d(256, 128, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(128, 128, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(128, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(128, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential()\n",
      "    )\n",
      "  )\n",
      "  (layer3): Sequential(\n",
      "    (0): Bottleneck(\n",
      "      (conv1): Conv2d(256, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(256, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential(\n",
      "        (0): Conv2d(256, 512, kernel_size=(1, 1), stride=(2, 2))\n",
      "        (1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      )\n",
      "    )\n",
      "    (1): Bottleneck(\n",
      "      (conv1): Conv2d(512, 256, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(256, 256, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(256, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(256, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential()\n",
      "    )\n",
      "  )\n",
      "  (layer4): Sequential(\n",
      "    (0): Bottleneck(\n",
      "      (conv1): Conv2d(512, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(2, 2), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(512, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential(\n",
      "        (0): Conv2d(512, 1024, kernel_size=(1, 1), stride=(2, 2))\n",
      "        (1): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      )\n",
      "    )\n",
      "    (1): Bottleneck(\n",
      "      (conv1): Conv2d(1024, 512, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn1): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv2): Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1), bias=False)\n",
      "      (bn2): BatchNorm2d(512, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (conv3): Conv2d(512, 1024, kernel_size=(1, 1), stride=(1, 1), bias=False)\n",
      "      (bn3): BatchNorm2d(1024, eps=1e-05, momentum=0.1, affine=True, track_running_stats=True)\n",
      "      (shortcut): Sequential()\n",
      "    )\n",
      "  )\n",
      "  (avgpool): AdaptiveAvgPool2d(output_size=(1, 1))\n",
      "  (fc): Sequential(\n",
      "    (0): Dropout(p=0.3, inplace=False)\n",
      "    (1): Linear(in_features=1024, out_features=100, bias=True)\n",
      "  )\n",
      ")\n"
     ]
    }
   ],
   "source": [
    "#网络模型\n",
    "model=ResNet50()\n",
    "model.to(device)\n",
    "print(model)\n",
    "#损失函数\n",
    "loss_fn=nn.CrossEntropyLoss() \n",
    "loss_fn.to(device)\n",
    " \n",
    "learning_rate=0.1\n",
    " \n",
    "optimizer=torch.optim.SGD(params=model.parameters(),lr=learning_rate, momentum=0.9,weight_decay=0.0001)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "-----第1轮训练开始------\n"
     ]
    },
    {
     "ename": "KeyboardInterrupt",
     "evalue": "",
     "output_type": "error",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
      "Cell \u001b[1;32mIn[10], line 17\u001b[0m\n\u001b[0;32m     15\u001b[0m \u001b[38;5;66;03m#训练步骤开始\u001b[39;00m\n\u001b[0;32m     16\u001b[0m model\u001b[38;5;241m.\u001b[39mtrain()\n\u001b[1;32m---> 17\u001b[0m \u001b[38;5;28;01mfor\u001b[39;00m batch_idx,(data,target) \u001b[38;5;129;01min\u001b[39;00m \u001b[38;5;28;43menumerate\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mtrain_loader\u001b[49m\u001b[43m)\u001b[49m:\n\u001b[0;32m     18\u001b[0m     data,target\u001b[38;5;241m=\u001b[39mdata\u001b[38;5;241m.\u001b[39mto(device),target\u001b[38;5;241m.\u001b[39mto(device)\n\u001b[0;32m     20\u001b[0m     optimizer\u001b[38;5;241m.\u001b[39mzero_grad()  \u001b[38;5;66;03m# 要将梯度清零，因为如果梯度不清零，pytorch中会将上次计算的梯度和本次计算的梯度累加\u001b[39;00m\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\site-packages\\torch\\utils\\data\\dataloader.py:439\u001b[0m, in \u001b[0;36mDataLoader.__iter__\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m    437\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_iterator\n\u001b[0;32m    438\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m--> 439\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_get_iterator\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\site-packages\\torch\\utils\\data\\dataloader.py:387\u001b[0m, in \u001b[0;36mDataLoader._get_iterator\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m    385\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[0;32m    386\u001b[0m     \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mcheck_worker_number_rationality()\n\u001b[1;32m--> 387\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_MultiProcessingDataLoaderIter\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m)\u001b[49m\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\site-packages\\torch\\utils\\data\\dataloader.py:1040\u001b[0m, in \u001b[0;36m_MultiProcessingDataLoaderIter.__init__\u001b[1;34m(self, loader)\u001b[0m\n\u001b[0;32m   1033\u001b[0m w\u001b[38;5;241m.\u001b[39mdaemon \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;01mTrue\u001b[39;00m\n\u001b[0;32m   1034\u001b[0m \u001b[38;5;66;03m# NB: Process.start() actually take some time as it needs to\u001b[39;00m\n\u001b[0;32m   1035\u001b[0m \u001b[38;5;66;03m#     start a process and pass the arguments over via a pipe.\u001b[39;00m\n\u001b[0;32m   1036\u001b[0m \u001b[38;5;66;03m#     Therefore, we only add a worker to self._workers list after\u001b[39;00m\n\u001b[0;32m   1037\u001b[0m \u001b[38;5;66;03m#     it started, so that we do not call .join() if program dies\u001b[39;00m\n\u001b[0;32m   1038\u001b[0m \u001b[38;5;66;03m#     before it starts, and __del__ tries to join but will get:\u001b[39;00m\n\u001b[0;32m   1039\u001b[0m \u001b[38;5;66;03m#     AssertionError: can only join a started process.\u001b[39;00m\n\u001b[1;32m-> 1040\u001b[0m \u001b[43mw\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mstart\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m   1041\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_index_queues\u001b[38;5;241m.\u001b[39mappend(index_queue)\n\u001b[0;32m   1042\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_workers\u001b[38;5;241m.\u001b[39mappend(w)\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\multiprocessing\\process.py:121\u001b[0m, in \u001b[0;36mBaseProcess.start\u001b[1;34m(self)\u001b[0m\n\u001b[0;32m    118\u001b[0m \u001b[38;5;28;01massert\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m _current_process\u001b[38;5;241m.\u001b[39m_config\u001b[38;5;241m.\u001b[39mget(\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mdaemon\u001b[39m\u001b[38;5;124m'\u001b[39m), \\\n\u001b[0;32m    119\u001b[0m        \u001b[38;5;124m'\u001b[39m\u001b[38;5;124mdaemonic processes are not allowed to have children\u001b[39m\u001b[38;5;124m'\u001b[39m\n\u001b[0;32m    120\u001b[0m _cleanup()\n\u001b[1;32m--> 121\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_popen \u001b[38;5;241m=\u001b[39m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_Popen\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mself\u001b[39;49m\u001b[43m)\u001b[49m\n\u001b[0;32m    122\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_sentinel \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_popen\u001b[38;5;241m.\u001b[39msentinel\n\u001b[0;32m    123\u001b[0m \u001b[38;5;66;03m# Avoid a refcycle if the target function holds an indirect\u001b[39;00m\n\u001b[0;32m    124\u001b[0m \u001b[38;5;66;03m# reference to the process object (see bpo-30775)\u001b[39;00m\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\multiprocessing\\context.py:224\u001b[0m, in \u001b[0;36mProcess._Popen\u001b[1;34m(process_obj)\u001b[0m\n\u001b[0;32m    222\u001b[0m \u001b[38;5;129m@staticmethod\u001b[39m\n\u001b[0;32m    223\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m_Popen\u001b[39m(process_obj):\n\u001b[1;32m--> 224\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43m_default_context\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mget_context\u001b[49m\u001b[43m(\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mProcess\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_Popen\u001b[49m\u001b[43m(\u001b[49m\u001b[43mprocess_obj\u001b[49m\u001b[43m)\u001b[49m\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\multiprocessing\\context.py:327\u001b[0m, in \u001b[0;36mSpawnProcess._Popen\u001b[1;34m(process_obj)\u001b[0m\n\u001b[0;32m    324\u001b[0m \u001b[38;5;129m@staticmethod\u001b[39m\n\u001b[0;32m    325\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m_Popen\u001b[39m(process_obj):\n\u001b[0;32m    326\u001b[0m     \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mpopen_spawn_win32\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m Popen\n\u001b[1;32m--> 327\u001b[0m     \u001b[38;5;28;01mreturn\u001b[39;00m \u001b[43mPopen\u001b[49m\u001b[43m(\u001b[49m\u001b[43mprocess_obj\u001b[49m\u001b[43m)\u001b[49m\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\multiprocessing\\popen_spawn_win32.py:93\u001b[0m, in \u001b[0;36mPopen.__init__\u001b[1;34m(self, process_obj)\u001b[0m\n\u001b[0;32m     91\u001b[0m \u001b[38;5;28;01mtry\u001b[39;00m:\n\u001b[0;32m     92\u001b[0m     reduction\u001b[38;5;241m.\u001b[39mdump(prep_data, to_child)\n\u001b[1;32m---> 93\u001b[0m     \u001b[43mreduction\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdump\u001b[49m\u001b[43m(\u001b[49m\u001b[43mprocess_obj\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mto_child\u001b[49m\u001b[43m)\u001b[49m\n\u001b[0;32m     94\u001b[0m \u001b[38;5;28;01mfinally\u001b[39;00m:\n\u001b[0;32m     95\u001b[0m     set_spawning_popen(\u001b[38;5;28;01mNone\u001b[39;00m)\n",
      "File \u001b[1;32mc:\\Users\\25265\\AppData\\Local\\Programs\\Python\\Python38\\lib\\multiprocessing\\reduction.py:60\u001b[0m, in \u001b[0;36mdump\u001b[1;34m(obj, file, protocol)\u001b[0m\n\u001b[0;32m     58\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21mdump\u001b[39m(obj, file, protocol\u001b[38;5;241m=\u001b[39m\u001b[38;5;28;01mNone\u001b[39;00m):\n\u001b[0;32m     59\u001b[0m \u001b[38;5;250m    \u001b[39m\u001b[38;5;124;03m'''Replacement for pickle.dump() using ForkingPickler.'''\u001b[39;00m\n\u001b[1;32m---> 60\u001b[0m     \u001b[43mForkingPickler\u001b[49m\u001b[43m(\u001b[49m\u001b[43mfile\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mprotocol\u001b[49m\u001b[43m)\u001b[49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mdump\u001b[49m\u001b[43m(\u001b[49m\u001b[43mobj\u001b[49m\u001b[43m)\u001b[49m\n",
      "\u001b[1;31mKeyboardInterrupt\u001b[0m: "
     ]
    }
   ],
   "source": [
    "train_acc_list = []\n",
    "train_loss_list = []\n",
    "test_acc_list = []\n",
    "test_loss_list=[]\n",
    "epochs=50\n",
    "\n",
    "max_test_acc = 0.0\n",
    "\n",
    "for epoch in range(epochs):\n",
    "    print(\"-----第{}轮训练开始------\".format(epoch + 1))\n",
    "    train_loss=0.0\n",
    "    test_loss=0.0\n",
    "    train_sum,train_cor,test_sum,test_cor=0,0,0,0\n",
    " \n",
    "    #训练步骤开始\n",
    "    model.train()\n",
    "    for batch_idx,(data,target) in enumerate(train_loader):\n",
    "        data,target=data.to(device),target.to(device)\n",
    " \n",
    "        optimizer.zero_grad()  # 要将梯度清零，因为如果梯度不清零，pytorch中会将上次计算的梯度和本次计算的梯度累加\n",
    "        # output = model(data)\n",
    "        output = model(data)\n",
    "        # loss = loss_fn(output, target)\n",
    "        loss = loss_fn(output, target)\n",
    "        loss.backward()\n",
    "        optimizer.step()  # 更新所有的参数\n",
    " \n",
    "        # 计算每轮训练集的Loss\n",
    "        train_loss += loss.item()\n",
    " \n",
    "        _, predicted = torch.max(output.data, 1)  # 选择最大的（概率）值所在的列数就是他所对应的类别数，\n",
    "        # train_cor += (predicted == target).sum().item()  # 正确分类个数\n",
    "        train_cor += (predicted == target).sum().item()  # 正确分类个数\n",
    "        train_sum += target.size(0)  # train_sum+=predicted.shape[0]\n",
    " \n",
    "    #测试步骤开始\n",
    "    model.eval()\n",
    "    # with torch.no_grad():\n",
    "    for batch_idx1,(data,target) in enumerate(test_loader):\n",
    "        data, target = data.to(device), target.to(device)\n",
    " \n",
    "        output = model(data)\n",
    "        loss = loss_fn(output, target)\n",
    "        test_loss+=loss.item()\n",
    "        _, predicted = torch.max(output.data, 1)\n",
    "        test_cor += (predicted == target).sum().item()\n",
    "        test_sum += target.size(0)\n",
    " \n",
    "    print(\"Train loss:{}   Train accuracy:{}%   Test loss:{}   Test accuracy:{}%\".format(train_loss/batch_idx,100*train_cor/train_sum,\n",
    "    \n",
    "                                                                                       test_loss/batch_idx1,100*test_cor/test_sum))\n",
    "    \n",
    "    test_acc = 100 * test_cor / test_sum\n",
    "    if test_acc > max_test_acc:  # 如果当前测试准确率大于最大测试准确率\n",
    "        max_test_acc = test_acc  # 更新最大测试准确率\n",
    "        torch.save(model, \"CIFAR100_best_model_epoch{}.pth\".format(epoch))  # 保存模型\n",
    "\n",
    "    train_loss_list.append(train_loss / batch_idx)\n",
    "    train_acc_list.append(100 * train_cor / train_sum)\n",
    "    test_acc_list.append(test_acc)\n",
    "    test_loss_list.append(test_loss / batch_idx1)\n",
    " \n",
    "#保存网络\n",
    "torch.save(model,\"BoTnet_epoch{}.pth\".format(epochs))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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6upKSEgIQ4cOta2Liori8ccfJygoCDc3N6pWrcr3338PwNixY6lZs2a6fb3//vuUKlXK9rxfv3507NiR119/naJFi1KhQgUAZs6cSd26dfH29iY4OJiHH37YNtfLFbt376ZDhw74+Pjg7e1N06ZNOXToEKtXr8bZ2ZmIiIh02w8fPpymTZve8pyIiOQnZni5yITv99D4fyvpMmUtq/4+a7d6CvQ8Mv9lGAaX7JQq3Z0ds2yky6hRo3jnnXcoXbo0hQsX5sSJE9x33328/vrruLq68tVXX3H//fezf/9+SpYsecP9jBs3jrfeeou3336bDz/8kF69enHs2DGKFClyw9eEh4fTvn17fH19eeSRR5g6dSoPP/ywbf2UKVMYMWIEb775Ju3atSM6Opo1a9YAYLVaadeuHbGxscyaNYsyZcqwZ8+eDM/DsmLFCnx8fFi+fLltWUpKChMmTKBChQpERkYyYsQI+vXrxw8//ADAP//8Q7NmzWjRogUrV67Ex8eHNWvWkJqaSrNmzShdujQzZ87kueees+1v9uzZvPXWWxmqTUQkLzIMg60noli24zQ/7jzNqeh/W9u9XJ2IjE2yW20KMle5lJJG5TE/2+XYe8a3wcMla/45xo8fT+vWrW3PixQpQo0aNWzPJ0yYwOLFi1myZEm61pD/6tevHz179gTgjTfeYPLkyWzYsIG2bdted3ur1cr06dP58MMPAejRowfPPvssR44cISwsDIDXXnuNZ599lqefftr2unr16gHw66+/smHDBvbu3Uv58uUBKF26dIbfv6enJ19++SUuLi62ZQMGDLB9X7p0aSZPnky9evWIi4vDy8uLjz/+GF9fX+bNm4ezszOArQaAgQMHEh4ebgsyS5cuJTExkW7dumW4PhGRvCDNarDj5OXwsiuCf6Iu2dZ5uTrRqlIg7asXpWk5f9yc7Tfxp4JMPlS3bt10z+Pi4hg7dizLli3j9OnTpKamcunSJY4fP37T/VSvXt32vaenJz4+Ptdcjrna8uXLiY+P57777gPA39+f1q1bM23aNCZMmEBkZCSnTp2iZcuW1339tm3bKF68eLoAkRnVqlVLF2IANm/ezNixY9m+fTsXL17EarUCcPz4cSpXrsy2bdto2rSpLcT8V79+/XjllVdYt24dd911F9OnT6dbt254enreUa0iIlktMSWNqIQU4pJS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BwzDSLfsv/1cADw907dgrV27ll69ejFu3DjatGlja/V59913b/vY999/P66urixevBgXFxdSUlLo2rXrTV8jIrlbcqqVb7ac5JPfD3H8gtl9wNvNiQZhflQK+Te0lPLzxFF9YPIcBZmrWSx3fHnHXoKCgihatCiHDx+mV69eN9zOx8eH7t270717d7p27Urbtm25cOECRYoUwdnZmbS0a5tWr/bDDz8QGxvL1q1b0/Wj2bVrF/379ycqKopq1aphtVpZtWqV7dLS1apXr86MGTNISUm5bqtMQEBAutFZaWlp7Nq1i7vvvvumtf3111+Ehoby8ssv25YdO3bsmmOvWLGC/v37X3cfTk5O9O3bl/DwcFxcXOjRo8ctw4+I5E6JKWks2HSCT38/xKnoRACKeLrwaNMwet8Virebbu6YHyjI5CPjxo1j2LBh+Pr60rZtW5KSkti0aRMXL15kxIgRTJo0iZCQEGrVqoWDgwMLFy4kODiYQoUKAWafkhUrVtC4cWNcXV0pXLjwNceYOnUq7du3t/UruaJy5co888wzzJ49myFDhtC3b18GDBhg6+x77NgxIiMj6datG0OHDuXDDz+kR48evPjii/j6+rJu3Trq169PhQoVuOeeexgxYgTLli2jTJkyTJo0iaioqFu+/3LlynH8+HHmzZtHvXr1WLZsGYsXL063zauvvkrLli0pU6YMPXr0IDU1lR9++IEXXnjBts2jjz5KpUqVAFizZk0G/xVExN4SklOZs/44n60+zNnYJAACvV0Z1Kw0DzcoiYeLPvryFSOfi46ONgAjOjr6mnWXLl0y9uzZY1y6dMkOld258PBww9fXN92y2bNnGzVr1jRcXFyMwoULG82aNTO++eYbwzAM4/PPPzdq1qxpeHp6Gj4+PkbLli2NLVu22F67ZMkSo2zZsoaTk5MRGhp6zfEiIiIMJycnY8GCBdetZ/DgwUatWrUMwzDP7TPPPGOEhIQYLi4uRtmyZY1p06bZtt2+fbtx7733Gh4eHoa3t7fRtGlT49ChQ4ZhGEZycrIxePBgo0iRIkZgYKAxceJE48EHHzT69u1re31oaKjx3nvvXVPDc889Z/j5+RleXl5G9+7djffee++ac/T111/bzpG/v7/RuXPna/bTtGlTo0qVKtd9n7cjr/9sieRV3249adQa/4sR+sL3RugL3xsN3/jV+OqvI8al5FR7lyYZdLPP76tZDOM/nRHymZiYGHx9fYmOjk7X6RMgMTGRI0eOEBYWhpubm50qlNzGMAzKlSvHk08+yYgRIzK1D/1sieS8+RuPM+qbnRgGlCziwZMtytC5dnFcnNRZNy+62ef31ez6r5uWlsbo0aMJCwvD3d2dMmXKMGHChHQdPQ3DYMyYMYSEhODu7k6rVq04cOCAHauW/Ozs2bN89NFHRERE3LAfjYjkPrPWHeOFr3fabiOw8tnm9KhfUiGmALDrhcL//e9/TJkyhRkzZlClShU2bdpE//798fX1ZdiwYQC89dZbTJ48mRkzZhAWFsbo0aNp06YNe/bs0V+6kuUCAwPx9/fn888/v24fIRHJfWb8dZRXl+wGYEDjMEZ3qKTbCBQgdg0yf/31Fw8++CDt27cHzM6mc+fOZcOGDYDZGvP+++/zyiuv8OCDDwLw1VdfERQUxLfffkuPHj3sVrvkT/n8SqtIvvPlH4d5bdleAB5vVppR7SoqxBQwdm1za9SoEStWrODvv/8GYPv27fz555+0a9cOgCNHjhAREZFuCK+vry8NGjRg7dq1191nUlISMTEx6R4iIpL/fLrqkC3EDLm7jEJMAWXXFplRo0YRExNDxYoVcXR0JC0tjddff902D0pERARgzpFytaCgINu6/5o4cWK66edvh/4Kl6ymnymR7PXxbwd5++f9ADzdshzDW5VTiCmg7Nois2DBAmbPns2cOXPYsmULM2bM4J133mHGjBmZ3ueLL75IdHS07fHfuzJf7cpkbAkJdrpRpORbV36m7vQ2DCJyrQ9+PWALMc+2Ls8zrcsrxBRgdm2Ree655xg1apStr0u1atU4duwYEydOpG/fvrabF545c4aQkBDb686cOUPNmjWvu09XV1dcXV1v6/iOjo4UKlSIyMhIADw8PPSfQe6IYRgkJCQQGRlJoUKFbnkXcRG5fYZhMGn533y48iAAL7StyOAWZexcldibXYNMQkICDg7pG4UcHR2xWq2Aeffm4OBgVqxYYQsuMTExrF+/nsGDB2dJDVfC0pUwI5IVbucu4iJy+05cSOCjlQeZv8lsZX+lfSUebaq70oudg8z999/P66+/TsmSJalSpQpbt25l0qRJDBgwAACLxcLw4cN57bXXKFeunG34ddGiRenYsWOW1GCxWAgJCSEwMPC6NyYUyShnZ2e1xIhkAcMw2HTsItP+PMLPuyOwXu569ur9lenfOMy+xUmuYdcg8+GHHzJ69GiefPJJIiMjKVq0KI8//jhjxoyxbfP8888THx/PoEGDiIqKokmTJvz0009ZPoeMo6OjPnxERHKBlDQrP+w8zdQ/j7DjZLRtedNy/jzRvAyNy/rbsTrJbQr0LQpERCT7nYtLIjYxFS9XJ7zdnHB1crhuf8SohGRmrz/OV2uPcibGvNmji5MDnWsVY0CTMMoHeed06WJHt/v5rVuAiohItvnyj8O88cNe22UhACcHC15uTni5OtnCjZuzIxuPXiAxxewj6e/lSp+GofRqUBI/r9sbwCEFk4KMiIhkOavV4LVle5m25ggAni6OJKSkYRiQajWISkghKuHafomVQ3wY2CSMDjVCcHXS5X65NQUZERHJUokpaTy7YDvLdp4G4OX7KvFo0zAMAxJS0ohLTCUuKYXYxFTiklKJS0wlNimVMH9P6oYW1jQYkiEKMiIikmWiE1J4bOYmNhy5gLOjhXe71eSBGkUBsFiwXU4C3fRXsoaCjIiIZIl/oi7Rd9oGDkbG4e3mxGe969CojEYYSfZSkBERkTu251QM/cI3EBmbRLCPG9MH1KNisEaKSvZTkBERkTvy54FzPDFrM3FJqZQP8mJ6//oULeRu77KkgFCQERGRTFu89STPLdxBqtXgrtJF+Kx3XXzddbNUyTkKMiIikinha44wbukeADpUD+HdbjU0ZFpynIKMiIhk2NUh5tEmYbx0XyUcHDRsWnKegoyIiGTIjL+O2kLMky3K8FybCpr7RezGwd4FiIhI3vHV2qO8umQ3AIMVYiQXUJAREZHbMnPdMcZ8Z4aYx5uX5nmFGMkFFGREROSWZq07xuhvdwHweLPSjGpbUSFGcgUFGRERuak564/zyuUQ81jTMEa1U4iR3ENBRkREbmjuhuO8tHgn8O/oJIUYyU0UZERE5LrmbzzOi9+YIWZA4zBebq8QI7mPgoyIiFxj8daTjLocYvo3LsXoDgoxkjspyIiISDoHI+N48ZudGAb0a1SKMR0qK8RIrqUgIyIiNsmpVp6et5XEFCtNy/krxEiupyAjIiI27y7fz+5TMRT2cOadh2rotgOS6ynIiIgIAH8dPMfnqw8DMLFzdYJ83OxckcitKciIiAhRCcmMWLAdw4Ce9UvQtmqwvUsSuS0KMiIiBZxhGLz4zU4iYhIp7e/J6A6V7V2SyG1TkBERKeAWbj7Jj7sicHKw8H6Pmni4ONm7JJHbpiAjIlKAHT0Xz7jLd7MecW95qhcvZN+CRDJIQUZEpIBKSbMyfP424pPTaBBWhMeblbF3SSIZpiAjIlJAfbjiANtOROHj5sR73WviqKHWkgcpyIiIFEAbj17go98OAvB6p2oULeRu54pEMkc9ukRE8ok0q8G8jcc5dj6BIp4u+Hm64Oflgp+nK0U8XfD3csXdxZGYxBSGz9uG1YDOtYtxf42i9i5dJNMUZERE8oHElDSemb+NH3dF3HQ7d2dHXJ0diEpIoUQRd8Y9UCWHKhTJHgoyIiJ5XFRCMo99tYmNRy/i4ujAQ3WLcyk5jfPxyZyPT+JCXDLn4pNJTrVyKSWNSylp5lDr7jXxdnO2d/kid0RBRkQkDzt5MYF+4Rs5GBmHt5sTn/euS8MyftdsZxgG8clpnI9L4nx8MoU9XAjz97RDxSJZS0FGRCSP2n0qmn7hGzkbm0SIrxvT+9enQrD3dbe1WCx4uTrh5epEqJ8CjOQfCjIiInnQHwfOMnjWFuKSUqkY7E14/3qE+GrkkRQ8CjIiInnMN1tO8vyiHaRaDRqW9uOzPnXwUV8XKaAUZERE8gjDMPjk90O8/fN+AB6oUZS3H6qOq5OjnSsTsR8FGRGRPCAlzcq4pbuZte44AI83K80LbSvioNl4pYBTkBERyeV2/RPNc4t2sPd0DBYLvNqhMv0ah9m7LJFcQUFGRCSXSkpN48MVB5my6hBpVoPCHs682aU6baoE27s0kVxDQUZEJBfadiKK5xZu50BkHADtq4Uw9oEqBHi72rkykdxFQUZEJBdJTEnjveV/88Ufh7Ea4O/lwoQHq9KuWoi9SxPJlRRkRERyiU1HL/D8oh0cPhcPQMeaRXn1/ioU9nSxc2UiuZeCjIiInSWmpPG/n/Yx/a+jGAYE+bjyesdqtKocZO/SRHI9BRkRETt795f9hK85CsBDdYrzSofK+LprgjuR26EgIyJiRxfik21zw7zXvQadahW3c0UieYuDvQsQESnIpv91lEspaVQp6kPHmsXsXY5InqMgIyJiJ3FJqcz46ygAT7Yoi8WiWXpFMkpBRkTETuasP0b0pRRK+3vStqomuRPJDAUZERE7SEpN48s/jgDwRPMyOOqeSSKZoiAjImIHX2/+h8jYJEJ83ehYS31jRDJLQUZEJIelpln5bPUhAB5tWhoXJ/0qFsks/e8REclhy3ae5tj5BAp7ONOzfgl7lyOSpynIiIjkIMMwmPK72RrTv3EYHi6azkvkTijIiIjkoN/2R7IvIhZPF0f6Nixl73JE8jwFGRGRHGIYBh//ZrbG9LorFF8P3YZA5E4pyIiI5JANRy6w+dhFXBwdeLRJmL3LEckXFGRERHLIJ5f7xnStW5xAHzc7VyOSPyjIiIjkgF3/RLPq77M4WODxZqXtXY5IvqEgIyKSA6asMltjOlQvSqifp52rEck/FGRERLLZ4bNx/LDzNACDW5SxczUi+YuCjIhIJp2NTWLXP9HEJKbcdLvPVh3GMKBlxUAqhfjkUHUiBYNmYhIRyQDDMFh3+AIz1x3l591nSLMaABTxdKGUnwel/Dwp5e9JqJ8HYf6euDs78s3WkwA8ebdaY0SymoKMiMhtiEtKZfGWk8xcd4y/z8TZlhf2cOZiQgoX4pO5EJ/MluNR1319/bAi1AktkkPVihQcCjIiIjdx4EwsX609xjdbThKfnAaAh4sjHWsVo/ddoVQK8SEuKZVj5+M5dj6BI+fiOXY+nqPnEjh6Pp7I2CQcHSw806q8nd+JSP6kICMich0r953h89WHWXf4gm1Z6QBPet8VSpc6xfFx+3dWXi9XJ6oU9aVKUd9r9hOflEpyqpXCni45UrdIQWP3zr7//PMPjzzyCH5+fri7u1OtWjU2bdpkW28YBmPGjCEkJAR3d3datWrFgQMH7FixiOR3H/92kAHTN7Hu8AUcLNCmShCzH23AihHN6d84LF2IuRVPVyeFGJFsZNcWmYsXL9K4cWPuvvtufvzxRwICAjhw4ACFCxe2bfPWW28xefJkZsyYQVhYGKNHj6ZNmzbs2bMHNzfNjCkiWccwDP73034+vTznS9+GoTzevAxFC7nbuTIRuRGLYRiGvQ4+atQo1qxZwx9//HHd9YZhULRoUZ599llGjhwJQHR0NEFBQUyfPp0ePXrc8hgxMTH4+voSHR2Nj4+GPYrI9VmtBmOW7GLWuuMAvHxfJR7TDLwidnO7n992vbS0ZMkS6taty0MPPURgYCC1atXiiy++sK0/cuQIERERtGrVyrbM19eXBg0asHbt2uvuMykpiZiYmHQPEZGbSU2zMnLhdmatO47FAm90qqYQI5JH2DXIHD58mClTplCuXDl+/vlnBg8ezLBhw5gxYwYAERERAAQFBaV7XVBQkG3df02cOBFfX1/bo0SJEtn7JkQkT0tKTWPInC18s/UfHB0svN+9Jg83KGnvskTkNtk1yFitVmrXrs0bb7xBrVq1GDRoEI899hiffvpppvf54osvEh0dbXucOHEiCysWkfwkITmVR2ds4ufdZ3BxcuDTR+rwYM1i9i5LRDLArkEmJCSEypUrp1tWqVIljh83r1EHBwcDcObMmXTbnDlzxrbuv1xdXfHx8Un3EBH5r5jEFPpM3cAfB87h4eJIeL96tK4cdOsXikiuYtcg07hxY/bv359u2d9//01oaCgAYWFhBAcHs2LFCtv6mJgY1q9fT8OGDXO0VhHJP87HJfHwF+vYdOwiPm5OzBzYgMZl/e1dlohkgl2HXz/zzDM0atSIN954g27durFhwwY+//xzPv/8cwAsFgvDhw/ntddeo1y5crbh10WLFqVjx472LF1E8qiI6EQembqeg5Fx+Hm68NXA+tedyE5E8ga7Bpl69eqxePFiXnzxRcaPH09YWBjvv/8+vXr1sm3z/PPPEx8fz6BBg4iKiqJJkyb89NNPmkNGRDLs6Ll4en25nn+iLhHi68bMgQ0oG+hl77JE5A7YdR6ZnKB5ZEQEYO/pGHpP3cC5uCRK+Xkwc2ADShTxsHdZInIDt/v5rXstiUi+t/nYBfqHbyQmMZVKIT58NaA+Ad6u9i5LRLKAgoyI5Gur/j7LEzM3cykljbqhhZnarx6+7rd/ryQRyd0UZEQk31q24zTD528lJc2gefkApjxSGw8X/doTyU/0P1pE8qV5G47z0uKdWA1oXz2E97rVxMXJrjNOiEg2UJARkXzns1WHmPjjPgB61i/Jax2r4uhgsXNVIpIdFGREJN8wDIO3ft7PlN8PAfBE8zK80LYCFotCjEh+pSAjIvnG/37az6erzBDzQtuKDG5Rxs4ViUh2U5ARkXxhxl9HbSHmtY5VeeSuUDtXJCI5QT3fRCTP+2nXacYu3Q3Ac20qKMSIFCAKMiKSp206eoGn523DMODhBiV5UpeTRAoUBRkRybMOnY3j0a82kZRqpVWlQMY/UEUde0UKGAUZEcmTImMT6TttA1EJKdQsUYgPe9bGyVG/0kQKGv2vF5E8Jy4plf7hGzl58RKl/DyY2rcu7i6O9i5LROxAQUZE8pSUNCtPzt7C7lMx+Hm6MGNAffy8dANIkYJKQUZE8gzDMHjxm52s/vss7s6OTOtXj1A/T3uXJSJ2pCAjInnGe8v/ZtHmkzhY4ONetahRopC9SxIRO9OEeCKS6xmGwZd/HGHyyoMAvN6pGvdUDLJzVSKSGyjIiEiuFpWQzPOLdvDLnjMADLunLD3rl7RzVSKSWyjIiEiutfHoBZ6eu5VT0Yk4O1p4oW1FBjYJs3dZIpKLKMiISK6TZjX45LeDvPfr31gNKOXnwYc9a1OtuK+9SxORXEZBRkRylTMxiQyft421h88D0KlWMSZ0rIqXq35dici19JtBRHKN3/ZF8uzC7VyIT8bDxZEJD1alS53i9i5LRHKxDA+/LlWqFOPHj+f48ePZUY+IFEDJqVZe+34P/adv5EJ8MpVDfFj6VBOFGBG5pQwHmeHDh/PNN99QunRpWrduzbx580hKSsqO2kSkAEhITqXXl+v48s8jAPRrVIpvnmxEmQAvO1cmInlBpoLMtm3b2LBhA5UqVeKpp54iJCSEoUOHsmXLluyoUUTyqdQ0K0/N2crGoxfxcXPiiz51GftAFdycdd8kEbk9FsMwjDvZQUpKCp988gkvvPACKSkpVKtWjWHDhtG/f38sFktW1ZlpMTEx+Pr6Eh0djY+Pj73LEZHLrtxuYN7GE7g6OTDnsQbUCS1i77JEJJe43c/vTHf2TUlJYfHixYSHh7N8+XLuuusuBg4cyMmTJ3nppZf49ddfmTNnTmZ3LyL53Pu/HmDexhM4WODDnrUUYkQkUzIcZLZs2UJ4eDhz587FwcGBPn368N5771GxYkXbNp06daJevXpZWqiI5B9zNxzngxUHAJjQsSr3Vgm2c0UikldlOMjUq1eP1q1bM2XKFDp27Iizs/M124SFhdGjR48sKVBE8pdf95zh5cU7AXjqnrL0ahBq54pEJC/LcJA5fPgwoaE3/8Xj6elJeHh4posSkfxpy/GLDJ27BasB3eoWZ0Tr8vYuSUTyuAyPWoqMjGT9+vXXLF+/fj2bNm3KkqJEJP85dDaOgdM3kphi5e4KAbzeqVquGBAgInlbhoPMkCFDOHHixDXL//nnH4YMGZIlRYlI/hIZk0jfaRu4mJBCjeK+fNyrNs6OGf71IyJyjQz/JtmzZw+1a9e+ZnmtWrXYs2dPlhQlIvlHbGIK/cI3cvLiJUr5eTCtXz08XHR3FBHJGhkOMq6urpw5c+aa5adPn8bJSb+cRORfiSlpPDFrM3tOx+Dv5cJXAxrg5+Vq77JEJB/JcJC59957efHFF4mOjrYti4qK4qWXXqJ169ZZWpyI5F3Rl1LoPXU9aw6ex8PFkfB+9Snp52HvskQkn8lwE8o777xDs2bNCA0NpVatWgBs27aNoKAgZs6cmeUFikjeExmbSJ+pG9gXEYu3mxPT+tWjWnFfe5clIvlQhoNMsWLF2LFjB7Nnz2b79u24u7vTv39/evbsed05ZUSkYDl2Pp7eUzdw/EICAd6ufDWgPpVCdHsQEckemerU4unpyaBBg7K6FhHJ4/aciqHPtA2ci0uiZBEPZg1soMtJIpKtMt07d8+ePRw/fpzk5OR0yx944IE7LkpE8p4NRy4wcMZGYhNTqRTiw4wB9Qj0drN3WSKSz2VqZt9OnTqxc+dOLBYLV26efWViq7S0tKytUERyvRV7z/Dk7C0kpVqpX6oIX/Sti6+7LjWLSPbL8Kilp59+mrCwMCIjI/Hw8GD37t2sXr2aunXr8vvvv2dDiSKSm329+SSDZm4mKdVKq0qBfDWwvkKMiOSYDLfIrF27lpUrV+Lv74+DgwMODg40adKEiRMnMmzYMLZu3ZoddYpILvTlH4d5bdleADrXLsb/ulTXjL0ikqMy/BsnLS0Nb29vAPz9/Tl16hQAoaGh7N+/P2urE5FcKTEljRe/2WkLMY82CeOdrjUUYkQkx2W4RaZq1aps376dsLAwGjRowFtvvYWLiwuff/45pUuXzo4aRSQXOXkxgSdnb2HHyWgsFnihbUUeb1ZaN4AUEbvIcJB55ZVXiI+PB2D8+PF06NCBpk2b4ufnx/z587O8QBHJPVb/fZZh87YSlZBCIQ9nPuhRi+blA+xdlogUYBbjyrCjO3DhwgUKFy6cK/8ii4mJwdfXl+joaHx8NCmXSGZYrQYf/XaQ9379G8OAasV8+aRXbUoU0RwxIpI9bvfzO0MXtFNSUnBycmLXrl3plhcpUiRXhhgRuXPRCSk8+tUmJi03Q0zP+iVZ+ERDhRgRyRUydGnJ2dmZkiVLaq4YkQJi96loBs/awvELCbg6OTChY1W61S1h77JERGwyPMTg5Zdf5qWXXuLChQvZUY+I5BILN52g8yd/cfxCAiWKuPP14EYKMSKS62S4s+9HH33EwYMHKVq0KKGhoXh6eqZbv2XLliwrTkRyXnxSKmOX7Gbh5pMA3F0hgPe718LXQ5PciUjuk+Eg07Fjx2woQ0Rygx0no3h63jaOnIvHYoHhLcvz1D1lcXBQHzgRyZ2yZNRSbqZRSyK3ZrUafP7HYd75eT+pVoMQXzfe716TBqX97F2aiBRQt/v5nem7X4tI/nAmJpERC7ax5uB5ANpVDWZi52oU8nCxc2UiIreW4SDj4OBw06HWGtEkkncs33OG5xdt52JCCu7Ojrx6f2W61yuh6RREJM/IcJBZvHhxuucpKSls3bqVGTNmMG7cuCwrTESyT2JKGq8v28vMdccAqBziw+SetSgb6GXnykREMibL+sjMmTOH+fPn891332XF7rKM+siIpLc/Ipan5m7h7zNxADzWNIyRbSrg6uRo58pERP6V431k7rrrLgYNGpRVuxORbPD9jlM8t3AHl1LS8Pdy5d1uNXSvJBHJ07IkyFy6dInJkydTrFixrNidiGSxNKvBWz/v47NVhwFoUtaf93vUxN/L1c6ViYjcmQwHmf/eHNIwDGJjY/Hw8GDWrFlZWpyI3LmL8ckMm7eVPw6cA+DxZqV5rk0FnBwzPLG3iEiuk+Eg895776ULMg4ODgQEBNCgQQMKFy6cpcWJyJ3ZcyqGx2dt4sSFS7g7O/JW1+rcX6OovcsSEckyGQ4y/fr1y4YyRCSrLdl+iucXbScxxUrJIh581rsOlULU4V1E8pcMB5nw8HC8vLx46KGH0i1fuHAhCQkJ9O3bN8uKE5GMS02z8tbP+/l8tdkfpln5ACb3qKkJ7kQkX8rwRfKJEyfi7+9/zfLAwEDeeOONLClKRDLnQnwyfcM32ELMky3KEN6vnkKMiORbGW6ROX78OGFhYdcsDw0N5fjx41lSlIhk3MHIWPpP38iJC5fwcHHknYdqcF+1EHuXJSKSrTLcIhMYGMiOHTuuWb59+3b8/HSDORF7+OvQOTp/8hcnLlyiZBEPFj/ZWCFGRAqEDLfI9OzZk2HDhuHt7U2zZs0AWLVqFU8//TQ9evTI8gJF5OYWbjrBi9/sJNVqUDe0MJ/3qUsRT11KEpGCIcMtMhMmTKBBgwa0bNkSd3d33N3duffee7nnnnvuqI/Mm2++icViYfjw4bZliYmJDBkyBD8/P7y8vOjSpQtnzpzJ9DFE8hPDMHj3l/08t2gHqVaD+2sUZdajDRRiRKRAyfS9lg4cOMC2bdtwd3enWrVqhIaGZrqIjRs30q1bN3x8fLj77rt5//33ARg8eDDLli1j+vTp+Pr6MnToUBwcHFizZs1t71v3WpL8KDEljRe+3sF3204BMOTuMjzbugIODrprtYjkD9l+r6Vy5cpRrly5zL7cJi4ujl69evHFF1/w2muv2ZZHR0czdepU5syZwz333AOYQ78rVarEunXruOuuu+742CJ50YX4ZB6fuYmNRy/i5GDhjU7V6FavhL3LEhGxiwxfWurSpQv/+9//rln+1ltvXTO3zO0YMmQI7du3p1WrVumWb968mZSUlHTLK1asSMmSJVm7du0N95eUlERMTEy6h0h+ceRcPJ0/WcPGoxfxdnNixoD6CjEiUqBlOMisXr2a++6775rl7dq1Y/Xq1Rna17x589iyZQsTJ068Zl1ERAQuLi4UKlQo3fKgoCAiIiJuuM+JEyfi6+tre5QooV/ykj9sOHKBTp+s4ej5BIoXduebwY1oXPbaOZ1ERAqSDAeZuLg4XFyu7Uzo7OycodaPEydO8PTTTzN79mzc3NwyWsYNvfjii0RHR9seJ06cyLJ9i9jLT7sieOTL9UQlpFCjRCEWP9mYckHe9i5L8rOoE7B9HlyKsnclckX0SVj3Kfz9C6Rcsnc1uUaG+8hUq1aN+fPnM2bMmHTL582bR+XKlW97P5s3byYyMpLatWvblqWlpbF69Wo++ugjfv75Z5KTk4mKikrXKnPmzBmCg4NvuF9XV1dcXV1v/w2J5HILNp5g1Dc7sBpwb+UgPuhRC3cXR3uXJfnZyU0wpxsknAcXb6jbD+56Enyy8YajOxeZH87Vu4GTfoenk3IJ1kyGP9+D1MsBxskNwppBuXuhXGsoXCprj2lNgw1fwLE/wb0wePiBh7/51dMfPIr8+9zFEyz2G2iQ4SAzevRoOnfuzKFDh2ydcFesWMGcOXNYtGjRbe+nZcuW7Ny5M92y/v37U7FiRV544QVKlCiBs7MzK1asoEuXLgDs37+f48eP07Bhw4yWLZInfb76EG/8sA+A7nVL8Hqnqjg5ZrghVeT27f8JFvYzPzCdPSA5Fv760GwJqN4NGg2DwIpZe8zzh+Drgeb3q96CFqOgendwzOBHVGI0bJ0NJzdCkdIQVBkCq4Bf2YzvK6ukJkH8OTOceWbwUrBhwN4l8PMrEH155vzg6mbAjPkHDvxiPgD8y/8bako2Aqc7mIYhNgK+eQyO3GZ3EUdXaPcm1B2Q+WPegQz/y95///18++23vPHGGyxatAh3d3dq1KjBypUrKVKkyG3vx9vbm6pVq6Zb5unpiZ+fn235wIEDGTFiBEWKFMHHx4ennnqKhg0basSS5HuGYfDWz/uZ8vshAB5vVppR7SpiseNfPVIAbAqHZSPAsELZ1vBQOBz7C9Z8AMfWwLbZ5qN8O2j8NJS8K2v+Ej++7t/vo4/Dd0/Cmvfh7peh0gPgcIvwfnY/bPgcts2FlPhr1zu6gH8FM9gEVTHDTUAFsyXBwREsjuZXB6fL3191PKvVDHXJCZBy+ZHu+3i4dNEMK/GREBf57/fxZ81wdUXx+lD5Qaj8ABQqefP3dGY3/PgCHP3DfO5TDFqPh6rmH/ZE7rkcZJab5+/c3+Zj7Ufg4mWGzmbPg08GZ/g+sBwWPwEJ58wg2/hpsDiY4Sn+nPk14RwkXDCfpyWZDyf3jB0nC2V6HpkrYmJimDt3LlOnTmXz5s2kpaVlel8tWrSgZs2atnlkEhMTefbZZ5k7dy5JSUm0adOGTz755KaXlq5Xn+aRkbwkzWrwyrc7mbvB7N/1QtuKDG5Rxs5VSb5mGPDbG7D6LfN5zUfg/vfB0fnfbU5shL8+gL3fA5c/NorXNz/oKra/s0CzZBhsmQH1H4dCJeCPSXDpgrkupAbcMwbKtkx/DGua+aG7/lM4/Nu/ywMqQdXOZn+SyD0QuReS4zJe05Vwk5ac+fd1hYMTWFPTLytayww1lR4Av6v+fydcgN8nwsYvzUDp6Gqe4ybDzeB1PZeizHNwYLn5iI80lzu5w11PmK93L3zzGlOTYeV4s/UNIKiaGWT9bzLNimGYQS7hPLgXAjffmx8jg2738zvTQWb16tVMnTqVr7/+mqJFi9K5c2e6dOlCvXr1Ml10dlCQkbwkKTWNEfO3s2znaRws8HqnavSsf4u/3CT3S4yGmFPmI/Y0xJyG2FPpv8afNf/ydXAyH45O/37v4HxVi8FtXFr0Lw+1epmXGq4OI9eTlgJLh8O2WebzZs/D3S/dOJicO2B+2G2f+++HfPt3od6jt306rvFJQzN0dJ8NlTpAYgys/dhsXbgSQko2gpZjILASbJ0FG7+Ai0fNdRYHqHAfNHgcSjX9T+CxQtQxc/9n9kDkbvPr+YNgZPAPbyd3cPEAZ09wvup7N1/wCgDPAPAMNC8heQVefh4AboUgLsIMgXuXmK1bhvXf/QZVM0ONq5d5ae1KiKv0ANz7GhTOwISzVqvZr2Xla3BivbnMzReaPGMGRRePa19z4QgsGgCntpjP6w+C1hPAOesG4mRGtgSZiIgIpk+fztSpU4mJiaFbt258+umnbN++PUMdfXOSgozkFfFJqTwxazN/HDiHi6MD7/eoqRs/5nVRJ2DZs3DgZ/sc3ysIaj4MtXqn/6v/iqQ4sz/MweVmGGg/Cer2v719x56BX181A03JRjDgx8zVmBgNb4YCBow8YAaAK+LPw5+TzE6naUnmMkfXf793KwS1+5ghKiMf9mC2JljTzDBj+5pqBoGrlzm6mh/+Tu63vsR1u+IiYd/3sOc7OPLHtYEqsDK0fRNKN8/8MQwD/v4Jfh0HZ/eay7xDoPkL5s/DlT5Du76GJU+bfaHcCsGDH5thMhfI8iBz//33s3r1atq3b0+vXr1o27Ytjo6OODs7K8iI3KGL8cn0n76RbSei8HBx5PPedWlSLo/PEWMY5l+d1rQ763h4u87sMX8pH/7dHOVhTb38SDFruPI8LdX84PAOMZvN/cuZLRj+5c1OoR6339fvhqxW2DwNlr/6b4uCWyFz1I93iNlvwfvy48oyr0DAclXdaZdrv+p5Wgq2yzo3PHaqeXlh2xyzL8MVpZqaH/qV7jdbE+IiYfZDcHqb+SH9UDhUaJex93nuIHxUx+yDMuq4ud+MOrgCZnU2R908vf3620T/Y1722jLT/LcLrGy2vlTrdv0Whrwk4QLsW2aGmuiTZofZugOyrnOyNQ12LDAvHV7pMOxXFlq8CEdWwZavzGUlG0LnL8xLe7lElgcZJycnhg0bxuDBg9PdmkBBRuTOnI6+RN9pG/j7TByFPJwJ71ePWiVvcT07N/j7Z/hltHk9/uq/Yq2Xg8LVTefl7oVuX2Xug+5mzh+CXd+YAebKX513ysP/crApZ3ZmrfSA2eR/u84dhCVPwfG/zOclGsADH5qdS3NSarL5F/mWr+Dgr9gCkJsvVO0Kh1aYl2Y8/ODhBVC8bsaPYRjwbgWIOwN9v4ewphnfx28TYdWb5iilzp/ffNvok2bH2qCqdh3umyelJsGmabD6bbNPi40Fmo2E5qPsN7LrBrL8Xkt//vknU6dOpU6dOlSqVInevXvTo0ePLClWpKDafSqaAdM3ciYmiSAfV2YObED53D7RXWqS2dKwfsrtv+bAL2aHzs6f3/kHUNQJ2L3YDC+nt/273NHFHGlT+QHzkoqDk9k/xMHpcv8S53/7nFgsEH3C7O9x7u/LXw9AzEmzFeP4OTOIbJkBy0ZClY5QsxeENrpx/WmpZp+O3ydCaqLZd6LVq1Dvsay7JJERTi7muaj8gHnOts2BrTPN971pqrlN4VLwyDfXv+x0OywWCG0Mu78xRzdlJsic3GB+LX4b/St9i5sPyTgnV7hrMNR6xOx/9NeH5uimzp/f2SWsXCDDnX3j4+OZP38+06ZNY8OGDaSlpTFp0iQGDBiAt3fu+wWsFhnJrVb9fZYnZ20mPjmNcoFehPevR/HCubyZ/NxBWNQfInaYzxsMhjr9LgcEh8sjPZzSD2k9tQVmdzNbaVqPN0dQZMbh382/3k9cNVTX4gilW5hDUiu2N0dO3ImkOLMT6PmDZufQ3d/ChUP/ri9cygw0NXqkHz4bsRO+G/pvsCp9N9z/Qcb7bWQ3a5p5HrfNNgNph/fS90nJjI1fmv2AwppB36UZrMcK/wuFpBh4/A8IqX5ntcjtS04w/3/m4skHs33UEpgT1E2dOpWZM2cSFRVF69atWbJkSWZ3ly0UZCQ3mrfhOC9/u4s0q0HD0n582rsOvu63GF1iT4ZhdupcNtKcp8PDDx78BCq0vb3Xb/gCfhgJWMzLGOXvzdjxd39rTphmTTX3EdrYHGJb+cGMTzKWEYZhjvzYNht2LTY7RIJZQ1gzM9ScP2DOuGpNNS/btJlodrAtKJc+IvfCJ3eZ/WxGHc9Yf6gze2BKQ7P1atTxXHdpQ+wrR4LMFWlpaSxdupRp06YpyIjchNVq8O7y/Xz8m/lXfudaxXizS3VcnHLxbL2JMeZf3DsXmM9LNTU7BWZkoi3DgO+fgc3h4OoDj/56+31Gts+Hb58w+9xU6QxtXs/eqfJvJDke9i41Q831Zjyt2MEchux9+/Nc5QuGAW+XMftdDPgFSja4/dduCofvh2euNUfyvSzvI3Mzjo6OdOzYkY4dO2bF7kTypaTUNJ5buIMl208BMKxlOZ5pVS53z9b7z2ZYNBAuHjEv49z9kjkfhUMG7/VksUC7t8wZWI//BXN7wGMrbz1J1+bp5hwnGOYkbQ9Mzvixs4qLp3lJqUYPuHjMbKHaNse8RNPuf2Y/moLIYjH7Du1das5fkpEgc+JK/5j62VObFAi5+M9AkfwjKiGZ3lM3sGT7KZwcLLzdtTojWpfPvSEmLcW8Sd3Ue80Q41sS+v9ojm7IbJBwcoHuM819XTgMC/ubHWRvZN0UWPo0YJgdZh/40H4h5r8Kh5r3Axq+A57dV3BDzBWhTcyvR9dk7HVXOvqWyED4EfkPXZAUyWbHzyfQb/oGDp+Nx9vViSmP1Ml9c8QYhtlacvg3OPSbOfPolflPKj8I90++8460YPZn6TnHDEiHf4PlY6DtG9du98ckWDHO/L7RMLOTcG4Nfbm1rpwU2sj8emK9GU5vp69L/HmzUzVkbui3yGUKMiLZaPuJKAbO2Mi5uGSK+roxrX89Kgbnkr5asWfMESyHfzdDRezp9Os9A8yb9tXpl7Uf1sHVoNOnsKAPrPvYvJFfrUfMdf+950/zUWbLh8JC7hZUxezonBgNEduhWJ1bv+bkRvOrf/msmYRQCiwFGZFs8tv+SJ6ctYVLKWlUDvEhvH89gnyy8d4l1jRznpATG6+abv3qKdit/y6LPW0OL76ak5s5u2eZu83hw0FVs2/+k8oPmiFl1ZtmJ2C/clCiPvzyijkXC0CrceaN8iT3c3A0b1Pw94/m5aXbCTJX7gOk/jFyhxRkRLLB15tP8sLXO0i1GjQt58+UR+rg5ZqN/93O7DZnk/1ncwZeZDHn7Sh9txleStyVszeJa/6CeQO/vUth/iNQrrU5Igig3dvQYFDO1SJ3LvRykDm2BhoPu/X2V1pkSijIyJ1RkBHJQoZh8Omqw/zvp30AdKxZlLe61si+4dUpieZlmDUfmK0trj5Q/zHzvj5XT0pncbjquRO4eputL55+2VPX7XBwgI6fmnfePbPrcoixmCOTavexX12SOaUam1+PrTVb/W7WMTst9d/QrSAjd0hBRiSLWK0G47/fw/S/jgLweLPSvNC2Ig4O2dS/48gf5qieKzPPVrrfbMnIyPwu9ubqBT3mwBf3mPfQ6fQZVH/I3lVJZgTXABdvSIo2WwhvNkvvmV2QkgCuvuCfw/egknxHQUYkCySlpjFiwXaW7TA7zL7SvhKPNi2dPQe7dNEc7XPlrrVewdD+HTPI5EWFQ2HoRnOU1NXT/kve4uhkziFz8Ffz8tLNgoxt/pi69rkPleQr+gkSuUMxiSn0m7aRZTtO4+xoYXLPWtkTYgzDnKr/o/r/hpi6A2DohrwbYq7wKKIQkx9cGYZ99M+bb6f5YyQLqUVG5A5ExiTSN3wje0/H4OniyGe9697ZHDFpKRAXCXEREBthji6KPWN+Pff3vyM9/Mubc7uENsyaNyKSFa5MjHfsLzN432jY/JWf4xK3ccdrkVtQkBHJpMNn4+g9dQP/RF3C38uV6f3rUbWYb8Z3dHoH/PSiGVTizwI3uf2ZgzM0HQFNn83Vd62VAqpoLfPmkZcuwNl9EFjp2m1iIyDqOGCBYpoIT+6cgoxIJhw/n0CPz9cRGZtEmL8nM/rXp6SfR8Z39PfP5lT9KfH/LrM4mjce9A42+794B4N3CHgHmXd99iuTdW9EJCs5uZijkI6sMi8vXS/IXOkfE1gZ3HLJ5JCSpynIiGRQRHQiD39phpgKQd7MfqwB/l6ZaB1Z/xn8NMqcqC6sObQeBz7FwMNfHSAl7wptbAaZY3+ZUwH8l61/jIZdS9ZQkBHJgPNxSTwydT0nL16ilJ8HMwfWz3iIsaaZl5I2fGY+r9UbOrwHjs5ZX7BITrPNJ7Pm+v1kTijISNZSkBG5TTGJKfSZtoGDkXGE+Lox69EGBGb0lgNJsbBoIBz42Xzeaiw0Hq57CUn+UawuOLpA3Bk4fwj8y/67LjUJTm0zv9eIJckiar8WuQ2XktMYOH0ju0/F4OfpwqxHG1C8cAb7xET/A9PamSHGyQ0emgFNnlGIkfzF2e3fTrzH/jMM+/QOSEsCDz8okk3zLEmBoyAjcgtJqWkMmrmJjUcv4u3mxFcD61MmwCtjOzm1Db5sCWd2mneV7rcMqnTMjnJF7M92eemv9MuvvlGkArxkEQUZkZtITbPy9Nxt/HHgHO7OjkzvX48qRTM4xHr/jxDezpwLJqAiPLrCnNFUJL8KvRxkjl7uJ3OFOvpKNlAfGZEbsFoNXvh6Jz/tjsDF0YEv+tSlTmiRfzeI2AmHf4fEGLPvS1IsJF39/eVH7GnAMO8y3W0GuGVirhmRvKREffPmpDEnIeoYFC5lBhp19JVsoCAjch2GYd4A8ustJ3F0sPDRw7X+nbH3+Dr441048Mvt77BOf7jvbY1MkoLBxdOcHO/kRvPyUuFSEH3SDPUWRyha294VSj6iICPyH4Zh8L+f9jP9r6NYLPDOQ9W5t3IQHFwBf0z6twOjxQHKtYFCJcDV23y4eIGrz7/PXb3NPjG+xez7pkRyWmhjM8gcXQM1H/63f0xwNXDJxOSRIjegICNylYTkVJ5buINlO827WE94oDKd3LbCF4/Aqa3mRg7OULOnOWxas+yKXF+pJrDm/X+D/8mN5lcNu5YspiAjctnJiwk89tVm9p6Owc3RyvS6x7lry3jznjFg3kOmTj9o9JRaWERupUQDs9Xy4lFz6gHbjSLVP0ayloKMCLD+8HkGz97Chfhk2nrs5z2vmbhvP2yudPUxp1q/60nwvIM7W4sUJG4+EFwdTm+Dg7+aneNBQUaynIKMFHiz1h1j7JLdFLJGMc1nAfck/wYxmJN23fWkGWI00kgk40o1MYPMuk/AmmreBNW3hL2rknxGQUYKrORUK2OX7mbu+qM87LiSlz0W4JEcB1ig3qNwzyvgXsjeZYrkXaGNYe1H/16eLaGJ8CTrKchIgXQ+LonBs7YQd2wL37hMo5bDQbBiNoXf/z4Uq2PvEkXyvpJ3ARbg8qR4uqwk2UBBRgqc3aeiGT7jT7rHz6S/y084Wgxw8TZbYOo9Co76byGSJTyKQFAVOLPLfK4RS5IN9BtbCpTf9p7h2zlT+MphBiFOF8yFlTtC24ngU9SutYnkS6GNzSDj6AIhNexdjeRDCjJSMFitrFk2naCN7/OB4zEA0gqVwrH9u1CulZ2LE8nHyraCDZ+Zl5mcXO1djeRDCjKSv1nTMHZ/y4UfX6NxwmFwgEQHd5wbP4VjsxHg7G7vCkXyt/L3Qs/55oy+ItlAQUbyp7RU2PU1xh/vYDn3N35AjOHBruI9aNhrNBaPIrfchYhkkQpt7V2B5GMKMpK/pKXAjgXwxztw4TAWIMrwZFpaO4JbP83Dzavbu0IREclCCjKSf0Tuhbk9zCnRgWiLD58m38c87uX1Ho24r1qIfesTEZEspyAj+UNsBMx+CKJPkOYRwJdpHXg/uilObl580acud5X2s3eFIiKSDRRkJO9Ljoc53SH6BEmFynB//Bj+jnUm2MeN6QPqUTHYx94ViohINlGQkbzNmgaLBsLpbaS4FqFj1NP8nehM2UAvZgyoT7FCGpUkIpKfKchI3vbzS/D3j1gdXOh76Rn2JvtTN7QwX/atSyEPF3tXJyIi2UxBRvKudZ/C+k8BGJHyJH+llKFxWT++6FMXDxf9aIuIFAT6bS95074f4KdRALyd9jDfptSnWfkAPu9dBzdnRzsXJyIiOcXB3gWIZNg/W+DrgYDBPGtLPk5pzz0VAxViREQKILXISN4SddwcoZSSwGprDV5O7se9lYP56OHauDgpl4uIFDQKMpJ3JEbD7G4QH8k+awmeTH6KNtWK8UGPWjg7KsSIiBRECjKSN6SlwII+cHYvEUZh+ic/zz01yjKpWw2cFGJERAosfQJI7he5D6a3h8O/E2+4MjD5ORrWqs573WsqxIiIFHBqkZHcKzUJ/ngX/pgE1hTiDDeGpgyjSp0mTOxcHUcHi70rFBERO1OQkdzp2FpYOgzO/Q3A8rTajEnpz90NavHag1VxUIgREREUZCS3SYyGX8fCpmkAxDkV4fmER/jB2oAnW5TluTYVsFgUYkRExKQgI7nH3qXww3MQexqAv3zv44kzHYnBizEdKjOgSZidCxQRkdxGQUbsLzYCfhhpBhnAWrgMEx2f4IuTxXB2tPDBQzV4sGYxOxcpIiK5kYKM2NeprTCnB8RFgIMTCfWG0vtAMzafTMTDxZHPetehabkAe1cpIiK5lIKM2M+eJfDNIEi9BAGVON3qI3ouieXo+QSKeLowvX89qhcvZO8qRUQkF9MkHJLzDAP+fA8W9DZDTNlW7G2/iAcWRXH0fALFC7uz6ImGCjEiInJLapGRnJWaDN8/A9tmmc/rD2Jd+ZE8Fr6N2KRUKgZ789WA+gT6uNm3ThERyRMUZCTnJFyA+b3h2J9gcYC2/2NV4U4Mmr6JpFQrDcKK8EXfuvi4Odu7UhERySMUZCRnnDsIc7rBhUPg4g0PhbM8pTpDZmwiOc1Ky4qBfNyrNm7OjvauVERE8hAFGcl+R/6A+Y9AYhT4loSH5/NDZGGGzd1MqtWgXdVgPuhRCxcnddkSEZGM0SeHZK8tM2FmRzPEFKsLj63g21O+DJ2zhVSrwYM1i/JhT4UYERHJHLt+ekycOJF69erh7e1NYGAgHTt2ZP/+/em2SUxMZMiQIfj5+eHl5UWXLl04c+aMnSqW25aWAj++AEuGgjUVqnSGft+zYG8SzyzYhtWAh+oUZ1I33cFaREQyz66fIKtWrWLIkCGsW7eO5cuXk5KSwr333kt8fLxtm2eeeYalS5eycOFCVq1axalTp+jcubMdq5Zbij8PMzvB+k/N5y1ehC5Tmbk5kue/3oFhQK8GJflfF93BWkRE7ozFMAzD3kVccfbsWQIDA1m1ahXNmjUjOjqagIAA5syZQ9euXQHYt28flSpVYu3atdx111233GdMTAy+vr5ER0fj4+OT3W9BInbCvIch6ji4eEGnz6BSB7784zCvLdsLwIDGYYzuUEk3fxQRkRu63c/vXNWmHx0dDUCRIkUA2Lx5MykpKbRq1cq2TcWKFSlZsiRr1661S41yE7sXw9R7zRBTOAwe/RUqdeDj3w7aQszgFmUUYkREJMvkmlFLVquV4cOH07hxY6pWrQpAREQELi4uFCpUKN22QUFBREREXHc/SUlJJCUl2Z7HxMRkW81ymTUNfnsd/njXfF7mHugyFcO9MO/9sp/JKw8C8Eyr8gxrWVYhRkREskyuCTJDhgxh165d/Pnnn3e0n4kTJzJu3LgsqkpuKTEavn4MDvxsPm/0FLQcSyoOvPLNTuZtPAHAC20rMrhFGTsWKiIi+VGuuLQ0dOhQvv/+e3777TeKFy9uWx4cHExycjJRUVHptj9z5gzBwcHX3deLL75IdHS07XHixInsLL1gO3cAvmhphhgnN+j8Bdz7GvGp8NhXm5i38QQOFpjQsapCjIiIZAu7tsgYhsFTTz3F4sWL+f333wkLC0u3vk6dOjg7O7NixQq6dOkCwP79+zl+/DgNGza87j5dXV1xdXXN9toLvD1L4LshkBQDPsWgx2woWouzsUkMnLGRHSejcXN2YHKPWtxb5fqhU0RE5E7ZNcgMGTKEOXPm8N133+Ht7W3r9+Lr64u7uzu+vr4MHDiQESNGUKRIEXx8fHjqqado2LDhbY1YkmyQmgzLx8D6Kebzkg2h21fgFcjhs3H0Dd/AiQuXKOLpwpd961K7ZGH71isiIvmaXYdf36jTZ3h4OP369QPMCfGeffZZ5s6dS1JSEm3atOGTTz654aWl/9Lw6ywUdQIW9oN/NpnPGw2DlmPA0ZnNxy7y6IyNXExIIdTPg+n96xPm72nXckVEJO+63c/vXDWPTHZQkMkif/8CiwfBpYvg5gsdP4WK9wHw8+4Ihs3dSlKqlRrFfZnarx7+Xrq8JyIimXe7n9+5ZtSS5FJpqebQ6j8nmc+L1oKHpkPhUgDMXHuUV5fsxmpAy4qBfPhwLTxc9GMlIiI5Q584cmOxEbBoIBy7PCS+3mPQ5nVwcsVqNXjr5/18uuoQAD3rl2TCg1V03yQREclRCjJyfUdWmyEmPtK81cADk6GqOXIsMSWNEQu28cNOs3P2yHvLM+RuTXQnIiI5T0FG0jMMWPuROTLJsEJgFeg2A/zLARAZm8hjX21m+4konB0tvNm5Ol3qFL/FTkVERLKHgoz8KzUJvn8Gts02n9fsBfe9Ay4eAOw9HcOjMzbxT9QlCnk489kjdWhQ2s+OBYuISEGnICOmuEiY/wicWA8WB2gzERo8DpcvF/22L5Khc7YQn5xGaX9PpvWrRykNrxYRETtTkBE4vR3mPgwxJ82h1Q9NN2/8eNn0NUcY//0erAY0LO3Hp4/UwdfD2X71ioiIXKYgU9Dt+Q4WPwEpCeBXFnrOB/+yAKSmWRn//R6+WnsMgO51SzChY1VcnDQySUREcgcFmYLKMGDVW/D7G+bzMi2h6zRwLwRATGIKT83Zyqq/z2KxwKi2FRnUrLRGJomISK6iIFMQJSfAt4Nhz7fm87uehNYTwNH8cfgn6hL9wzfw95k43J0deb9HTdroxo8iIpILKcgUNNH/wLyeZr8YB2fo8B7U7m1bvedUDP3CNxAZm0SQjytT+9ajajFfOxYsIiJyYwoyBUnELpj9EMSeAg9/6D4LQhvaVq85eI7HZ24mLimV8kFeTO9fn6KF3O1YsIiIyM0pyBQUh1bC/D6QHAsBFeHhBVA41Lb6263/8Nyi7aSkGTQIK8Lnferi666RSSIikrspyBQEW2fD0mFgTYVSTaH7THAvDIBhGHy2+jBv/rgPgA7VQ3i3Ww1cnRztWbGIiMhtUZDJz/47MqnaQ/Dgx+DkCkCa1WDC93uY/tdRAB5rGsaL7Srh4KCRSSIikjcoyORXaSnw/XDYOst83mQE3DMaHMw5YBJT0hg+bxs/7Y7AYoFX2ldmYJMw+9UrIiKSCQoy+VFiDCzsa/aLsThA+3eh7gDb6qiEZB77ahMbj17ExdGBSd1r0KF6UTsWLCIikjkKMvlNzCmY3Q3O7ARnD/N2A+Xb2FafirpEn2kbOBgZh7ebE1/0qctduvGjiIjkUQoy+UnkXpjVBWL+Ac8Ac2RSsdq21bGJKfQLN0NMiK8b0/vXp0Kwtx0LFhERuTMKMvlFbAR81RHiIsCvHDyyCAqXsq1OsxoMm7uVv8/EEeTjyqLBjSimOWJERCSPU5DJD1KTYH5vM8QEVIT+P4JHkXSbvPHDXn7bfxY3Zwe+6FNXIUZERPIF3cY4rzMM+GEknNwAbr7QY841IWbuhuNM/fMIAJO61aR68UJ2KFRERCTrKcjkdZumwZavAAt0mQZ+ZdKt/uvQOUZ/uwuAZ1uX575qIXYoUkREJHsoyORlx/6CH583v2/1KpRrlW71kXPxDJ61hVSrwYM1izL0nrJ2KFJERCT7KMjkVdH/wII+5m0HqnSCxsPTr05IYeD0jURfSqFWyUL8r0t1LBbN2CsiIvmLgkxelHIJ5veC+LMQVNW87cBVISUlzcqTczZz+Fw8RX3d+Lx3Xdycde8kERHJfxRk8hrDgO+fgVNbwb0I9JgNLp5XrTYYt3Q3aw6ex8PFkan96hHg7WrHgkVERLKPgkxes/5T2D4XLI7wUHi6uWIAvlp7jFnrjmOxwAc9alEpxMc+dYqIiOQABZm85PAq+Pll8/t7X4PSLdKt/n1/JOOW7gZgVNuKtK4clMMFioiI5CwFmbzi4jFY2A+MNKjeA+4anG71ir1nGDRzM1YDHqpTnEHNStunThERkRykmX3zgphTMKc7XLoAITXh/vfTde5dsv0UI+ZvI9Vq0KpSEK93qqYRSiIiUiAoyOR2Z3bD7IfMG0F6BZmde53/vb3A3A3HeWnxTgwDOtYsytsP1cDZUQ1tIiJSMCjI5GaHfjPnikmKAf/y0GsR+Ba3rf5i9WFe/2EvAL0alGTCg1VxcFBLjIiIFBwKMrnV1tmwdJg54V1oE+gxC9wLA+YQ6/eW/83klQcBeLx5aUa1rajLSSIiUuAoyOQ2hgG/vwmr3jSfV3vInPDOyZwLxmo1GP/9Hqb/dRSA59pUYMjduvWAiIgUTAoyuUlqMix9GrbPMZ83fRbufgUczD4vqWlWRn2zk0WbTwIw/sEq9GlYyk7FioiI2J+CTG6RGA3ze8ORVeZkd+3fhbr9bauTUtMYPm8bP+6KwMECb3etQZc6xW+yQxERkfxPQSY3iD5pjkyK3AMuXvDQdCjX2rb6bGwSw+dvZc3B87g4OjC5Zy3aVg22X70iIiK5hIKMvZ07ADPuh9jT4BUMvRZASA3b6t/2RfLcou2ci0vG3dmRz3rXoVn5ADsWLCIiknsoyNjTuQMwvQPERUBAJei1EAqVACAxJY03f9xn69RbMdibyT1rUT7I244Fi4iI5C4KMvZy7uC/ISawCvRdCp5+AOyPiOXpeVvZFxELQP/GpXihbUXcnB3tWbGIiEiuoyBjD+cPwYwrIaYy9F0Cnn4YhsFXa4/x+g97SU614u/lwtsP1eDuCoH2rlhERCRXUpDJaecPmS0xsafNy0l9loCnP+fiknh+0Q5W7osEoEWFAN7uWoMAb1c7FywiIpJ7KcjkpAuHL3fsPQUBFc3LSV4BrPr7LM8u2M65uCRcnBx4qV1F+jYqpZl6RUREbkFBJqdcOALT7zdv/uhfwRZift1zhsdmbsIwoHyQF5N71qJisI+9qxUREckTFGRywoUj5uWkmJPmzR/7LgWvQPZFxPD0vK0YBnSqVYyJnaupQ6+IiEgGKMhkt4vHzMtJMSfBr5wZYryDOBeXxMDpm4hPTqNRGT/e6lodZ0cHe1crIiKSp+iTMzvFnDJbYqJPgF9Z6Pc9eAeTlJrGEzM380/UJcL8PfmkV22FGBERkUzQp2d2MQxY8hREH4ciZaCvGWIMw+DFb3ay6dhFfNyc+LJvXQp5uNi7WhERkTxJQSa7bJsDB38FR1foOQ98QgD4bPVhvtnyD44OFj7uVZsyAV52LlRERCTvUpDJDjGn4KcXze/vfgkCygOwfM8Z/vfTPgBevb8yTcvpnkkiIiJ3QkEmqxkGLB0OSdFQtDY0HArA3tP/jlDqfVcofRqWsmuZIiIi+YGCTFbbMR8O/AyOLtDxE3B04mxsEo/O2ERCchqNy/ox5v7K9q5SREQkX1CQyUqxEfDjC+b3zV+AwEokpqTxxCxzhFJpf08+ebiORiiJiIhkEX2iZhXDgO9HQGIUhNSExsMxDIOXvtnJ5qtGKPl6ONu7UhERkXxDQSar7Poa9i8DB2fo+AmGgyNv/rSPb7aaI5Q+6VWH0hqhJCIikqU0s29WiIuEH0aa3zd/HiOwMhN/3Mfnqw8D8FrHqjQp52/HAkVERPInBZk7ZRiwbARcugjB1TAaD+f1ZXv58s8jAEzoWJWe9UvauUgREZH8SUHmTu1eDHuXgoMTxoMfM+HHg0xbY4aY1ztVpVeDUDsXKCIikn8pyNyJ+HO2S0pGkxGM2+jE9L/MEDOxczW1xIiIiGQzBZk78cNISDiPEViZCdH3MX39USwWeLNzNbrXU4gRERHJbgoymbXnO9i9GMPiyJRCI5m2/hQWC/yvc3W61Sth7+pEREQKBAWZzNo4FYBVgb14a4cbFgu81aU6D9VViBEREckpmkcmk6w9F7Cs6FMMOtYSiwXe6VpDIUZERCSHqUUmEwzD4OXvDzD3cEMcLDCpWw061Spu77JEREQKHAWZTLBYLJT297wcYmrSsVYxe5ckIiJSICnIZNJjzUpzd8VAygbqtgMiIiL2kif6yHz88ceUKlUKNzc3GjRowIYNG+xdEoBCjIiIiJ3l+iAzf/58RowYwauvvsqWLVuoUaMGbdq0ITIy0t6liYiIiJ3l+iAzadIkHnvsMfr370/lypX59NNP8fDwYNq0afYuTUREROwsVweZ5ORkNm/eTKtWrWzLHBwcaNWqFWvXrr3ua5KSkoiJiUn3EBERkfwpVweZc+fOkZaWRlBQULrlQUFBREREXPc1EydOxNfX1/YoUUJzu4iIiORXuTrIZMaLL75IdHS07XHixAl7lyQiIiLZJFcPv/b398fR0ZEzZ86kW37mzBmCg4Ov+xpXV1dcXV1zojwRERGxs1zdIuPi4kKdOnVYsWKFbZnVamXFihU0bNjQjpWJiIhIbpCrW2QARowYQd++falbty7169fn/fffJz4+nv79+9u7NBEREbGzXB9kunfvztmzZxkzZgwRERHUrFmTn3766ZoOwCIiIlLwWAzDMOxdRHaKiYnB19eX6OhofHx87F2OiIiI3Ibb/fzO1X1kRERERG5GQUZERETyLAUZERERybNyfWffO3WlC5BuVSAiIpJ3XPncvlVX3nwfZGJjYwF0qwIREZE8KDY2Fl9f3xuuz/ejlqxWK6dOncLb2xuLxZJl+42JiaFEiRKcOHFCo6FygM53ztL5znk65zlL5ztnZeZ8G4ZBbGwsRYsWxcHhxj1h8n2LjIODA8WLF8+2/fv4+Og/QQ7S+c5ZOt85T+c8Z+l856yMnu+btcRcoc6+IiIikmcpyIiIiEiepSCTSa6urrz66qu603YO0fnOWTrfOU/nPGfpfOes7Dzf+b6zr4iIiORfapERERGRPEtBRkRERPIsBRkRERHJsxRkREREJM9SkMmkjz/+mFKlSuHm5kaDBg3YsGGDvUvKF1avXs39999P0aJFsVgsfPvtt+nWG4bBmDFjCAkJwd3dnVatWnHgwAH7FJsPTJw4kXr16uHt7U1gYCAdO3Zk//796bZJTExkyJAh+Pn54eXlRZcuXThz5oydKs7bpkyZQvXq1W2TgjVs2JAff/zRtl7nOvu8+eabWCwWhg8fblum8521xo4di8ViSfeoWLGibX12nW8FmUyYP38+I0aM4NVXX2XLli3UqFGDNm3aEBkZae/S8rz4+Hhq1KjBxx9/fN31b731FpMnT+bTTz9l/fr1eHp60qZNGxITE3O40vxh1apVDBkyhHXr1rF8+XJSUlK49957iY+Pt23zzDPPsHTpUhYuXMiqVas4deoUnTt3tmPVeVfx4sV588032bx5M5s2beKee+7hwQcfZPfu3YDOdXbZuHEjn332GdWrV0+3XOc761WpUoXTp0/bHn/++adtXbadb0MyrH79+saQIUNsz9PS0oyiRYsaEydOtGNV+Q9gLF682PbcarUawcHBxttvv21bFhUVZbi6uhpz5861Q4X5T2RkpAEYq1atMgzDPL/Ozs7GwoULbdvs3bvXAIy1a9faq8x8pXDhwsaXX36pc51NYmNjjXLlyhnLly83mjdvbjz99NOGYehnOzu8+uqrRo0aNa67LjvPt1pkMig5OZnNmzfTqlUr2zIHBwdatWrF2rVr7VhZ/nfkyBEiIiLSnXtfX18aNGigc59FoqOjAShSpAgAmzdvJiUlJd05r1ixIiVLltQ5v0NpaWnMmzeP+Ph4GjZsqHOdTYYMGUL79u3TnVfQz3Z2OXDgAEWLFqV06dL06tWL48ePA9l7vvP9TSOz2rlz50hLSyMoKCjd8qCgIPbt22enqgqGiIgIgOue+yvrJPOsVivDhw+ncePGVK1aFTDPuYuLC4UKFUq3rc555u3cuZOGDRuSmJiIl5cXixcvpnLlymzbtk3nOovNmzePLVu2sHHjxmvW6Wc76zVo0IDp06dToUIFTp8+zbhx42jatCm7du3K1vOtICMigPmX665du9Jd05asV6FCBbZt20Z0dDSLFi2ib9++rFq1yt5l5TsnTpzg6aefZvny5bi5udm7nAKhXbt2tu+rV69OgwYNCA0NZcGCBbi7u2fbcXVpKYP8/f1xdHS8pqf1mTNnCA4OtlNVBcOV86tzn/WGDh3K999/z2+//Ubx4sVty4ODg0lOTiYqKird9jrnmefi4kLZsmWpU6cOEydOpEaNGnzwwQc611ls8+bNREZGUrt2bZycnHBycmLVqlVMnjwZJycngoKCdL6zWaFChShfvjwHDx7M1p9vBZkMcnFxoU6dOqxYscK2zGq1smLFCho2bGjHyvK/sLAwgoOD0537mJgY1q9fr3OfSYZhMHToUBYvXszKlSsJCwtLt75OnTo4OzunO+f79+/n+PHjOudZxGq1kpSUpHOdxVq2bMnOnTvZtm2b7VG3bl169epl+17nO3vFxcVx6NAhQkJCsvfn+466ChdQ8+bNM1xdXY3p06cbe/bsMQYNGmQUKlTIiIiIsHdpeV5sbKyxdetWY+vWrQZgTJo0ydi6datx7NgxwzAM48033zQKFSpkfPfdd8aOHTuMBx980AgLCzMuXbpk58rzpsGDBxu+vr7G77//bpw+fdr2SEhIsG3zxBNPGCVLljRWrlxpbNq0yWjYsKHRsGFDO1add40aNcpYtWqVceTIEWPHjh3GqFGjDIvFYvzyyy+GYehcZ7erRy0Zhs53Vnv22WeN33//3Thy5IixZs0ao1WrVoa/v78RGRlpGEb2nW8FmUz68MMPjZIlSxouLi5G/fr1jXXr1tm7pHzht99+M4BrHn379jUMwxyCPXr0aCMoKMhwdXU1WrZsaezfv9++Redh1zvXgBEeHm7b5tKlS8aTTz5pFC5c2PDw8DA6depknD592n5F52EDBgwwQkNDDRcXFyMgIMBo2bKlLcQYhs51dvtvkNH5zlrdu3c3QkJCDBcXF6NYsWJG9+7djYMHD9rWZ9f5thiGYdxZm46IiIiIfaiPjIiIiORZCjIiIiKSZynIiIiISJ6lICMiIiJ5loKMiIiI5FkKMiIiIpJnKciIiIhInqUgIyIFjsVi4dtvv7V3GSKSBRRkRCRH9evXD4vFcs2jbdu29i5NRPIgJ3sXICIFT9u2bQkPD0+3zNXV1U7ViEhephYZEclxrq6uBAcHp3sULlwYMC/7TJkyhXbt2uHu7k7p0qVZtGhRutfv3LmTe+65B3d3d/z8/Bg0aBBxcXHptpk2bRpVqlTB1dWVkJAQhg4dmm79uXPn6NSpEx4eHpQrV44lS5Zk75sWkWyhICMiuc7o0aPp0qUL27dvp1evXvTo0YO9e/cCEB8fT5s2bShcuDAbN25k4cKF/Prrr+mCypQpUxgyZAiDBg1i586dLFmyhLJly6Y7xrhx4+jWrRs7duzgvvvuo1evXly4cCFH36eIZIE7vu2kiEgG9O3b13B0dDQ8PT3TPV5//XXDMMw7cj/xxBPpXtOgQQNj8ODBhmEYxueff24ULlzYiIuLs61ftmyZ4eDgYERERBiGYRhFixY1Xn755RvWABivvPKK7XlcXJwBGD/++GOWvU8RyRnqIyMiOe7uu+9mypQp6ZYVKVLE9n3Dhg3TrWvYsCHbtm0DYO/evdSoUQNPT0/b+saNG2O1Wtm/fz8Wi4VTp07RsmXLm9ZQvXp12/eenp74+PgQGRmZ2bckInaiICMiOc7T0/OaSz1Zxd3d/ba2c3Z2TvfcYrFgtVqzoyQRyUbqIyMiuc66deuueV6pUiUAKlWqxPbt24mPj7etX7NmDQ4ODlSoUAFvb29KlSrFihUrcrRmEbEPtciISI5LSkoiIiIi3TInJyf8/f0BWLhwIXXr1qVJkybMnj2bDRs2MHXqVAB69erFq6++St++fRk7dixnz57lqaeeonfv3gQFBQEwduxYnnjiCQIDA2nXrh2xsbGsWbOGp556KmffqIhkOwUZEclxP/30EyEhIemWVahQgX379gHmiKJ58+bx5JNPEhISwty5c6lcuTIAHh4e/Pzzzzz99NPUq1cPDw8PunTpwqRJk2z76tu3L4mJibz33nuMHDkSf39/unbtmnNvUERyjMUwDMPeRYiIXGGxWFi8eDEdO3a0dykikgeoj4yIiIjkWQoyIiIikmepj4yI5Cq62i0iGaEWGREREcmzFGREREQkz1KQERERkTxLQUZERETyLAUZERERybMUZERERCTPUpARERGRPEtBRkRERPIsBRkRERHJs/4P4OvwmNH4O0QAAAAASUVORK5CYII=",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "\n",
    "# 创建一个新的图像\n",
    "plt.figure()\n",
    "\n",
    "# 绘制训练精度\n",
    "plt.plot(range(epochs), train_acc_list, label='Train Accuracy')\n",
    "\n",
    "# 绘制测试精度\n",
    "plt.plot(range(epochs), test_acc_list, label='Test Accuracy')\n",
    "\n",
    "# 添加图例\n",
    "plt.legend()\n",
    "\n",
    "# 添加标题和标签\n",
    "plt.title('Train and Test Accuracy')\n",
    "plt.xlabel('Epoch')\n",
    "plt.ylabel('Accuracy')\n",
    "\n",
    "# 显示图像\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Accuracy of the network on the test images: 64 %\n"
     ]
    }
   ],
   "source": [
    "# 加载模型\n",
    "model = torch.load(\"CIFAR100_best_model_epoch200.pth\")\n",
    "model = model.to(device)\n",
    "\n",
    "# 测试步骤开始\n",
    "model.eval()\n",
    "correct = 0\n",
    "total = 0\n",
    "with torch.no_grad():\n",
    "    for data in test_loader:\n",
    "        images, labels = data\n",
    "        images, labels = images.to(device), labels.to(device)\n",
    "        outputs = model(images)\n",
    "        _, predicted = torch.max(outputs.data, 1)\n",
    "        total += labels.size(0)\n",
    "        correct += (predicted == labels).sum().item()\n",
    "\n",
    "print('Accuracy of the network on the test images: %d %%' % (\n",
    "    100 * correct / total))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/svg+xml": [
       "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>\n",
       "<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n",
       " \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n",
       "<!-- Generated by graphviz version 11.0.0 (20240428.1522)\n",
       " -->\n",
       "<!-- Pages: 1 -->\n",
       "<svg width=\"2136pt\" height=\"5760pt\"\n",
       " viewBox=\"0.00 0.00 2136.00 5760.00\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n",
       "<g id=\"graph0\" class=\"graph\" transform=\"scale(1 1) rotate(0) translate(4 5756)\">\n",
       "<polygon fill=\"white\" stroke=\"none\" points=\"-4,4 -4,-5756 2132,-5756 2132,4 -4,4\"/>\n",
       "<!-- 1459325924992 -->\n",
       "<g id=\"node1\" class=\"node\">\n",
       "<title>1459325924992</title>\n",
       "<polygon fill=\"#caff70\" stroke=\"black\" points=\"1596,-32 1542,-32 1542,0 1596,0 1596,-32\"/>\n",
       "<text text-anchor=\"middle\" x=\"1569\" y=\"-6.5\" font-family=\"monospace\" font-size=\"10.00\"> ()</text>\n",
       "</g>\n",
       "<!-- 1459359608256 -->\n",
       "<g id=\"node2\" class=\"node\">\n",
       "<title>1459359608256</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1616,-88 1522,-88 1522,-68 1616,-68 1616,-88\"/>\n",
       "<text text-anchor=\"middle\" x=\"1569\" y=\"-74.5\" font-family=\"monospace\" font-size=\"10.00\">MeanBackward0</text>\n",
       "</g>\n",
       "<!-- 1459359608256&#45;&gt;1459325924992 -->\n",
       "<g id=\"edge294\" class=\"edge\">\n",
       "<title>1459359608256&#45;&gt;1459325924992</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1569,-67.62C1569,-61.1 1569,-52.05 1569,-43.4\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1572.5,-43.65 1569,-33.65 1565.5,-43.65 1572.5,-43.65\"/>\n",
       "</g>\n",
       "<!-- 1459359745696 -->\n",
       "<g id=\"node3\" class=\"node\">\n",
       "<title>1459359745696</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1619,-144 1519,-144 1519,-124 1619,-124 1619,-144\"/>\n",
       "<text text-anchor=\"middle\" x=\"1569\" y=\"-130.5\" font-family=\"monospace\" font-size=\"10.00\">AddmmBackward0</text>\n",
       "</g>\n",
       "<!-- 1459359745696&#45;&gt;1459359608256 -->\n",
       "<g id=\"edge1\" class=\"edge\">\n",
       "<title>1459359745696&#45;&gt;1459359608256</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1569,-123.59C1569,-117.01 1569,-107.96 1569,-99.73\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1572.5,-99.81 1569,-89.81 1565.5,-99.81 1572.5,-99.81\"/>\n",
       "</g>\n",
       "<!-- 1459359608448 -->\n",
       "<g id=\"node4\" class=\"node\">\n",
       "<title>1459359608448</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1507,-200 1407,-200 1407,-180 1507,-180 1507,-200\"/>\n",
       "<text text-anchor=\"middle\" x=\"1457\" y=\"-186.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459359608448&#45;&gt;1459359745696 -->\n",
       "<g id=\"edge2\" class=\"edge\">\n",
       "<title>1459359608448&#45;&gt;1459359745696</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1476.51,-179.59C1493.75,-171.28 1519.16,-159.03 1538.99,-149.47\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1540.49,-152.63 1547.98,-145.14 1537.45,-146.33 1540.49,-152.63\"/>\n",
       "</g>\n",
       "<!-- 1459359450272 -->\n",
       "<g id=\"node5\" class=\"node\">\n",
       "<title>1459359450272</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1484,-268 1430,-268 1430,-236 1484,-236 1484,-268\"/>\n",
       "<text text-anchor=\"middle\" x=\"1457\" y=\"-242.5\" font-family=\"monospace\" font-size=\"10.00\"> (100)</text>\n",
       "</g>\n",
       "<!-- 1459359450272&#45;&gt;1459359608448 -->\n",
       "<g id=\"edge3\" class=\"edge\">\n",
       "<title>1459359450272&#45;&gt;1459359608448</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1457,-235.55C1457,-228.34 1457,-219.66 1457,-211.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1460.5,-211.92 1457,-201.92 1453.5,-211.92 1460.5,-211.92\"/>\n",
       "</g>\n",
       "<!-- 1459360167728 -->\n",
       "<g id=\"node6\" class=\"node\">\n",
       "<title>1459360167728</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1613,-200 1525,-200 1525,-180 1613,-180 1613,-200\"/>\n",
       "<text text-anchor=\"middle\" x=\"1569\" y=\"-186.5\" font-family=\"monospace\" font-size=\"10.00\">MulBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167728&#45;&gt;1459359745696 -->\n",
       "<g id=\"edge4\" class=\"edge\">\n",
       "<title>1459360167728&#45;&gt;1459359745696</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1569,-179.59C1569,-173.01 1569,-163.96 1569,-155.73\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1572.5,-155.81 1569,-145.81 1565.5,-155.81 1572.5,-155.81\"/>\n",
       "</g>\n",
       "<!-- 1459360167632 -->\n",
       "<g id=\"node7\" class=\"node\">\n",
       "<title>1459360167632</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1612,-262 1518,-262 1518,-242 1612,-242 1612,-262\"/>\n",
       "<text text-anchor=\"middle\" x=\"1565\" y=\"-248.5\" font-family=\"monospace\" font-size=\"10.00\">ViewBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167632&#45;&gt;1459360167728 -->\n",
       "<g id=\"edge5\" class=\"edge\">\n",
       "<title>1459360167632&#45;&gt;1459360167728</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1565.62,-241.62C1566.16,-233.56 1566.96,-221.65 1567.64,-211.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1571.12,-211.83 1568.29,-201.62 1564.13,-211.37 1571.12,-211.83\"/>\n",
       "</g>\n",
       "<!-- 1459360167104 -->\n",
       "<g id=\"node8\" class=\"node\">\n",
       "<title>1459360167104</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1612,-330 1518,-330 1518,-310 1612,-310 1612,-330\"/>\n",
       "<text text-anchor=\"middle\" x=\"1565\" y=\"-316.5\" font-family=\"monospace\" font-size=\"10.00\">MeanBackward1</text>\n",
       "</g>\n",
       "<!-- 1459360167104&#45;&gt;1459360167632 -->\n",
       "<g id=\"edge6\" class=\"edge\">\n",
       "<title>1459360167104&#45;&gt;1459360167632</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1565,-309.54C1565,-300.23 1565,-285.7 1565,-273.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1568.5,-273.95 1565,-263.95 1561.5,-273.95 1568.5,-273.95\"/>\n",
       "</g>\n",
       "<!-- 1459360167344 -->\n",
       "<g id=\"node9\" class=\"node\">\n",
       "<title>1459360167344</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1612,-392 1518,-392 1518,-372 1612,-372 1612,-392\"/>\n",
       "<text text-anchor=\"middle\" x=\"1565\" y=\"-378.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167344&#45;&gt;1459360167104 -->\n",
       "<g id=\"edge7\" class=\"edge\">\n",
       "<title>1459360167344&#45;&gt;1459360167104</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1565,-371.62C1565,-363.56 1565,-351.65 1565,-341.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1568.5,-341.63 1565,-331.63 1561.5,-341.63 1568.5,-341.63\"/>\n",
       "</g>\n",
       "<!-- 1459360167248 -->\n",
       "<g id=\"node10\" class=\"node\">\n",
       "<title>1459360167248</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1609,-448 1521,-448 1521,-428 1609,-428 1609,-448\"/>\n",
       "<text text-anchor=\"middle\" x=\"1565\" y=\"-434.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167248&#45;&gt;1459360167344 -->\n",
       "<g id=\"edge8\" class=\"edge\">\n",
       "<title>1459360167248&#45;&gt;1459360167344</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1565,-427.59C1565,-421.01 1565,-411.96 1565,-403.73\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1568.5,-403.81 1565,-393.81 1561.5,-403.81 1568.5,-403.81\"/>\n",
       "</g>\n",
       "<!-- 1459360167152 -->\n",
       "<g id=\"node11\" class=\"node\">\n",
       "<title>1459360167152</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1972,-504 1812,-504 1812,-484 1972,-484 1972,-504\"/>\n",
       "<text text-anchor=\"middle\" x=\"1892\" y=\"-490.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167152&#45;&gt;1459360167248 -->\n",
       "<g id=\"edge9\" class=\"edge\">\n",
       "<title>1459360167152&#45;&gt;1459360167248</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1834.67,-483.53C1774.27,-473.56 1679.81,-457.96 1620.22,-448.12\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1621.08,-444.71 1610.65,-446.54 1619.94,-451.62 1621.08,-444.71\"/>\n",
       "</g>\n",
       "<!-- 1459360167056 -->\n",
       "<g id=\"node12\" class=\"node\">\n",
       "<title>1459360167056</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1892,-560 1756,-560 1756,-540 1892,-540 1892,-560\"/>\n",
       "<text text-anchor=\"middle\" x=\"1824\" y=\"-546.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167056&#45;&gt;1459360167152 -->\n",
       "<g id=\"edge10\" class=\"edge\">\n",
       "<title>1459360167056&#45;&gt;1459360167152</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1835.84,-539.59C1845.69,-531.77 1859.93,-520.46 1871.61,-511.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1873.45,-514.2 1879.11,-505.24 1869.1,-508.72 1873.45,-514.2\"/>\n",
       "</g>\n",
       "<!-- 1459360166816 -->\n",
       "<g id=\"node13\" class=\"node\">\n",
       "<title>1459360166816</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1816,-622 1722,-622 1722,-602 1816,-602 1816,-622\"/>\n",
       "<text text-anchor=\"middle\" x=\"1769\" y=\"-608.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360166816&#45;&gt;1459360167056 -->\n",
       "<g id=\"edge11\" class=\"edge\">\n",
       "<title>1459360166816&#45;&gt;1459360167056</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1777.59,-601.62C1785.71,-592.77 1798.09,-579.26 1808.03,-568.43\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1810.45,-570.97 1814.62,-561.23 1805.29,-566.23 1810.45,-570.97\"/>\n",
       "</g>\n",
       "<!-- 1459360166672 -->\n",
       "<g id=\"node14\" class=\"node\">\n",
       "<title>1459360166672</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1849,-690 1689,-690 1689,-670 1849,-670 1849,-690\"/>\n",
       "<text text-anchor=\"middle\" x=\"1769\" y=\"-676.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360166672&#45;&gt;1459360166816 -->\n",
       "<g id=\"edge12\" class=\"edge\">\n",
       "<title>1459360166672&#45;&gt;1459360166816</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1769,-669.54C1769,-660.23 1769,-645.7 1769,-633.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1772.5,-633.95 1769,-623.95 1765.5,-633.95 1772.5,-633.95\"/>\n",
       "</g>\n",
       "<!-- 1459360166192 -->\n",
       "<g id=\"node15\" class=\"node\">\n",
       "<title>1459360166192</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1769,-752 1633,-752 1633,-732 1769,-732 1769,-752\"/>\n",
       "<text text-anchor=\"middle\" x=\"1701\" y=\"-738.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360166192&#45;&gt;1459360166672 -->\n",
       "<g id=\"edge13\" class=\"edge\">\n",
       "<title>1459360166192&#45;&gt;1459360166672</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1711.62,-731.62C1721.96,-722.5 1737.9,-708.45 1750.35,-697.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1752.35,-700.35 1757.54,-691.11 1747.72,-695.11 1752.35,-700.35\"/>\n",
       "</g>\n",
       "<!-- 1459360166336 -->\n",
       "<g id=\"node16\" class=\"node\">\n",
       "<title>1459360166336</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1697,-814 1603,-814 1603,-794 1697,-794 1697,-814\"/>\n",
       "<text text-anchor=\"middle\" x=\"1650\" y=\"-800.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360166336&#45;&gt;1459360166192 -->\n",
       "<g id=\"edge14\" class=\"edge\">\n",
       "<title>1459360166336&#45;&gt;1459360166192</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1657.97,-793.62C1665.42,-784.86 1676.75,-771.53 1685.91,-760.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1688.46,-763.15 1692.27,-753.27 1683.13,-758.62 1688.46,-763.15\"/>\n",
       "</g>\n",
       "<!-- 1459360166000 -->\n",
       "<g id=\"node17\" class=\"node\">\n",
       "<title>1459360166000</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1730,-882 1570,-882 1570,-862 1730,-862 1730,-882\"/>\n",
       "<text text-anchor=\"middle\" x=\"1650\" y=\"-868.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360166000&#45;&gt;1459360166336 -->\n",
       "<g id=\"edge15\" class=\"edge\">\n",
       "<title>1459360166000&#45;&gt;1459360166336</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1650,-861.54C1650,-852.23 1650,-837.7 1650,-825.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1653.5,-825.95 1650,-815.95 1646.5,-825.95 1653.5,-825.95\"/>\n",
       "</g>\n",
       "<!-- 1459360166144 -->\n",
       "<g id=\"node18\" class=\"node\">\n",
       "<title>1459360166144</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1644,-944 1508,-944 1508,-924 1644,-924 1644,-944\"/>\n",
       "<text text-anchor=\"middle\" x=\"1576\" y=\"-930.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360166144&#45;&gt;1459360166000 -->\n",
       "<g id=\"edge16\" class=\"edge\">\n",
       "<title>1459360166144&#45;&gt;1459360166000</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1587.56,-923.62C1598.92,-914.41 1616.49,-900.17 1630.1,-889.14\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1632.02,-892.08 1637.59,-883.07 1627.61,-886.65 1632.02,-892.08\"/>\n",
       "</g>\n",
       "<!-- 1459360167200 -->\n",
       "<g id=\"node19\" class=\"node\">\n",
       "<title>1459360167200</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1527,-1006 1433,-1006 1433,-986 1527,-986 1527,-1006\"/>\n",
       "<text text-anchor=\"middle\" x=\"1480\" y=\"-992.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167200&#45;&gt;1459360167248 -->\n",
       "<g id=\"edge290\" class=\"edge\">\n",
       "<title>1459360167200&#45;&gt;1459360167248</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1480,-985.51C1480,-964.98 1480,-914.94 1480,-873 1480,-873 1480,-873 1480,-549 1480,-508.55 1516.43,-473.92 1541.59,-454.82\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1543.33,-457.89 1549.36,-449.18 1539.21,-452.23 1543.33,-457.89\"/>\n",
       "</g>\n",
       "<!-- 1459360167200&#45;&gt;1459360166144 -->\n",
       "<g id=\"edge17\" class=\"edge\">\n",
       "<title>1459360167200&#45;&gt;1459360166144</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1495,-985.62C1510.08,-976.2 1533.57,-961.52 1551.38,-950.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1553.2,-953.38 1559.82,-945.11 1549.49,-947.44 1553.2,-953.38\"/>\n",
       "</g>\n",
       "<!-- 1459360165952 -->\n",
       "<g id=\"node20\" class=\"node\">\n",
       "<title>1459360165952</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1520,-1074 1432,-1074 1432,-1054 1520,-1054 1520,-1074\"/>\n",
       "<text text-anchor=\"middle\" x=\"1476\" y=\"-1060.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360165952&#45;&gt;1459360167200 -->\n",
       "<g id=\"edge18\" class=\"edge\">\n",
       "<title>1459360165952&#45;&gt;1459360167200</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1476.57,-1053.54C1477.14,-1044.23 1478.02,-1029.7 1478.75,-1017.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1482.22,-1018.14 1479.34,-1007.95 1475.24,-1017.72 1482.22,-1018.14\"/>\n",
       "</g>\n",
       "<!-- 1459360002000 -->\n",
       "<g id=\"node21\" class=\"node\">\n",
       "<title>1459360002000</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1783,-1136 1623,-1136 1623,-1116 1783,-1116 1783,-1136\"/>\n",
       "<text text-anchor=\"middle\" x=\"1703\" y=\"-1122.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360002000&#45;&gt;1459360165952 -->\n",
       "<g id=\"edge19\" class=\"edge\">\n",
       "<title>1459360002000&#45;&gt;1459360165952</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1665.26,-1115.5C1629.97,-1106.56 1575.83,-1092.68 1529,-1080 1526.07,-1079.21 1523.06,-1078.38 1520.02,-1077.54\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1521.08,-1074.2 1510.5,-1074.88 1519.2,-1080.94 1521.08,-1074.2\"/>\n",
       "</g>\n",
       "<!-- 1459360001856 -->\n",
       "<g id=\"node22\" class=\"node\">\n",
       "<title>1459360001856</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1703,-1192 1567,-1192 1567,-1172 1703,-1172 1703,-1192\"/>\n",
       "<text text-anchor=\"middle\" x=\"1635\" y=\"-1178.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001856&#45;&gt;1459360002000 -->\n",
       "<g id=\"edge20\" class=\"edge\">\n",
       "<title>1459360001856&#45;&gt;1459360002000</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1646.84,-1171.59C1656.69,-1163.77 1670.93,-1152.46 1682.61,-1143.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1684.45,-1146.2 1690.11,-1137.24 1680.1,-1140.72 1684.45,-1146.2\"/>\n",
       "</g>\n",
       "<!-- 1459360001616 -->\n",
       "<g id=\"node23\" class=\"node\">\n",
       "<title>1459360001616</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1627,-1254 1533,-1254 1533,-1234 1627,-1234 1627,-1254\"/>\n",
       "<text text-anchor=\"middle\" x=\"1580\" y=\"-1240.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001616&#45;&gt;1459360001856 -->\n",
       "<g id=\"edge21\" class=\"edge\">\n",
       "<title>1459360001616&#45;&gt;1459360001856</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1588.59,-1233.62C1596.71,-1224.77 1609.09,-1211.26 1619.03,-1200.43\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1621.45,-1202.97 1625.62,-1193.23 1616.29,-1198.23 1621.45,-1202.97\"/>\n",
       "</g>\n",
       "<!-- 1459360001472 -->\n",
       "<g id=\"node24\" class=\"node\">\n",
       "<title>1459360001472</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1660,-1322 1500,-1322 1500,-1302 1660,-1302 1660,-1322\"/>\n",
       "<text text-anchor=\"middle\" x=\"1580\" y=\"-1308.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001472&#45;&gt;1459360001616 -->\n",
       "<g id=\"edge22\" class=\"edge\">\n",
       "<title>1459360001472&#45;&gt;1459360001616</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1580,-1301.54C1580,-1292.23 1580,-1277.7 1580,-1265.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1583.5,-1265.95 1580,-1255.95 1576.5,-1265.95 1583.5,-1265.95\"/>\n",
       "</g>\n",
       "<!-- 1459360001376 -->\n",
       "<g id=\"node25\" class=\"node\">\n",
       "<title>1459360001376</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1579,-1384 1443,-1384 1443,-1364 1579,-1364 1579,-1384\"/>\n",
       "<text text-anchor=\"middle\" x=\"1511\" y=\"-1370.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001376&#45;&gt;1459360001472 -->\n",
       "<g id=\"edge23\" class=\"edge\">\n",
       "<title>1459360001376&#45;&gt;1459360001472</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1521.78,-1363.62C1532.27,-1354.5 1548.44,-1340.45 1561.07,-1329.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1563.13,-1332.31 1568.38,-1323.11 1558.54,-1327.03 1563.13,-1332.31\"/>\n",
       "</g>\n",
       "<!-- 1459360001088 -->\n",
       "<g id=\"node26\" class=\"node\">\n",
       "<title>1459360001088</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1529,-1446 1435,-1446 1435,-1426 1529,-1426 1529,-1446\"/>\n",
       "<text text-anchor=\"middle\" x=\"1482\" y=\"-1432.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001088&#45;&gt;1459360001376 -->\n",
       "<g id=\"edge24\" class=\"edge\">\n",
       "<title>1459360001088&#45;&gt;1459360001376</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1486.53,-1425.62C1490.56,-1417.3 1496.57,-1404.86 1501.62,-1394.4\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1504.74,-1396 1505.94,-1385.48 1498.43,-1392.96 1504.74,-1396\"/>\n",
       "</g>\n",
       "<!-- 1459325738960 -->\n",
       "<g id=\"node27\" class=\"node\">\n",
       "<title>1459325738960</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1562,-1514 1402,-1514 1402,-1494 1562,-1494 1562,-1514\"/>\n",
       "<text text-anchor=\"middle\" x=\"1482\" y=\"-1500.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459325738960&#45;&gt;1459360001088 -->\n",
       "<g id=\"edge25\" class=\"edge\">\n",
       "<title>1459325738960&#45;&gt;1459360001088</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1482,-1493.54C1482,-1484.23 1482,-1469.7 1482,-1457.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1485.5,-1457.95 1482,-1447.95 1478.5,-1457.95 1485.5,-1457.95\"/>\n",
       "</g>\n",
       "<!-- 1459360001040 -->\n",
       "<g id=\"node28\" class=\"node\">\n",
       "<title>1459360001040</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1509,-1576 1373,-1576 1373,-1556 1509,-1556 1509,-1576\"/>\n",
       "<text text-anchor=\"middle\" x=\"1441\" y=\"-1562.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001040&#45;&gt;1459325738960 -->\n",
       "<g id=\"edge26\" class=\"edge\">\n",
       "<title>1459360001040&#45;&gt;1459325738960</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1447.41,-1555.62C1453.28,-1547.03 1462.14,-1534.07 1469.42,-1523.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1472.17,-1525.59 1474.92,-1515.36 1466.39,-1521.64 1472.17,-1525.59\"/>\n",
       "</g>\n",
       "<!-- 1459325843488 -->\n",
       "<g id=\"node29\" class=\"node\">\n",
       "<title>1459325843488</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1455,-1638 1361,-1638 1361,-1618 1455,-1618 1455,-1638\"/>\n",
       "<text text-anchor=\"middle\" x=\"1408\" y=\"-1624.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459325843488&#45;&gt;1459360001040 -->\n",
       "<g id=\"edge27\" class=\"edge\">\n",
       "<title>1459325843488&#45;&gt;1459360001040</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1413.16,-1617.62C1417.78,-1609.21 1424.72,-1596.6 1430.51,-1586.07\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1433.51,-1587.89 1435.26,-1577.44 1427.37,-1584.51 1433.51,-1587.89\"/>\n",
       "</g>\n",
       "<!-- 1459325844976 -->\n",
       "<g id=\"node258\" class=\"node\">\n",
       "<title>1459325844976</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1351,-1576 1215,-1576 1215,-1556 1351,-1556 1351,-1576\"/>\n",
       "<text text-anchor=\"middle\" x=\"1283\" y=\"-1562.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459325843488&#45;&gt;1459325844976 -->\n",
       "<g id=\"edge263\" class=\"edge\">\n",
       "<title>1459325843488&#45;&gt;1459325844976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1388.47,-1617.62C1368.1,-1607.85 1335.94,-1592.41 1312.49,-1581.15\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1314.29,-1578.14 1303.76,-1576.96 1311.26,-1584.45 1314.29,-1578.14\"/>\n",
       "</g>\n",
       "<!-- 1459326223552 -->\n",
       "<g id=\"node30\" class=\"node\">\n",
       "<title>1459326223552</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1449,-1706 1361,-1706 1361,-1686 1449,-1686 1449,-1706\"/>\n",
       "<text text-anchor=\"middle\" x=\"1405\" y=\"-1692.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326223552&#45;&gt;1459325843488 -->\n",
       "<g id=\"edge28\" class=\"edge\">\n",
       "<title>1459326223552&#45;&gt;1459325843488</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1405.43,-1685.54C1405.85,-1676.23 1406.51,-1661.7 1407.06,-1649.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1410.54,-1650.1 1407.5,-1639.95 1403.55,-1649.78 1410.54,-1650.1\"/>\n",
       "</g>\n",
       "<!-- 1459326223504 -->\n",
       "<g id=\"node31\" class=\"node\">\n",
       "<title>1459326223504</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1689,-1768 1529,-1768 1529,-1748 1689,-1748 1689,-1768\"/>\n",
       "<text text-anchor=\"middle\" x=\"1609\" y=\"-1754.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326223504&#45;&gt;1459326223552 -->\n",
       "<g id=\"edge29\" class=\"edge\">\n",
       "<title>1459326223504&#45;&gt;1459326223552</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1577.12,-1747.62C1542.35,-1737.4 1486.48,-1720.97 1447.88,-1709.61\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1449.02,-1706.3 1438.44,-1706.84 1447.05,-1713.01 1449.02,-1706.3\"/>\n",
       "</g>\n",
       "<!-- 1459326224368 -->\n",
       "<g id=\"node32\" class=\"node\">\n",
       "<title>1459326224368</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1609,-1824 1473,-1824 1473,-1804 1609,-1804 1609,-1824\"/>\n",
       "<text text-anchor=\"middle\" x=\"1541\" y=\"-1810.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326224368&#45;&gt;1459326223504 -->\n",
       "<g id=\"edge30\" class=\"edge\">\n",
       "<title>1459326224368&#45;&gt;1459326223504</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1552.84,-1803.59C1562.69,-1795.77 1576.93,-1784.46 1588.61,-1775.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1590.45,-1778.2 1596.11,-1769.24 1586.1,-1772.72 1590.45,-1778.2\"/>\n",
       "</g>\n",
       "<!-- 1459326224128 -->\n",
       "<g id=\"node33\" class=\"node\">\n",
       "<title>1459326224128</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1537,-1886 1443,-1886 1443,-1866 1537,-1866 1537,-1886\"/>\n",
       "<text text-anchor=\"middle\" x=\"1490\" y=\"-1872.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326224128&#45;&gt;1459326224368 -->\n",
       "<g id=\"edge31\" class=\"edge\">\n",
       "<title>1459326224128&#45;&gt;1459326224368</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1497.97,-1865.62C1505.42,-1856.86 1516.75,-1843.53 1525.91,-1832.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1528.46,-1835.15 1532.27,-1825.27 1523.13,-1830.62 1528.46,-1835.15\"/>\n",
       "</g>\n",
       "<!-- 1459326223264 -->\n",
       "<g id=\"node34\" class=\"node\">\n",
       "<title>1459326223264</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1570,-1954 1410,-1954 1410,-1934 1570,-1934 1570,-1954\"/>\n",
       "<text text-anchor=\"middle\" x=\"1490\" y=\"-1940.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326223264&#45;&gt;1459326224128 -->\n",
       "<g id=\"edge32\" class=\"edge\">\n",
       "<title>1459326223264&#45;&gt;1459326224128</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1490,-1933.54C1490,-1924.23 1490,-1909.7 1490,-1897.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1493.5,-1897.95 1490,-1887.95 1486.5,-1897.95 1493.5,-1897.95\"/>\n",
       "</g>\n",
       "<!-- 1459326223072 -->\n",
       "<g id=\"node35\" class=\"node\">\n",
       "<title>1459326223072</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1490,-2016 1354,-2016 1354,-1996 1490,-1996 1490,-2016\"/>\n",
       "<text text-anchor=\"middle\" x=\"1422\" y=\"-2002.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326223072&#45;&gt;1459326223264 -->\n",
       "<g id=\"edge33\" class=\"edge\">\n",
       "<title>1459326223072&#45;&gt;1459326223264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1432.62,-1995.62C1442.96,-1986.5 1458.9,-1972.45 1471.35,-1961.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1473.35,-1964.35 1478.54,-1955.11 1468.72,-1959.11 1473.35,-1964.35\"/>\n",
       "</g>\n",
       "<!-- 1459326222880 -->\n",
       "<g id=\"node36\" class=\"node\">\n",
       "<title>1459326222880</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1418,-2078 1324,-2078 1324,-2058 1418,-2058 1418,-2078\"/>\n",
       "<text text-anchor=\"middle\" x=\"1371\" y=\"-2064.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326222880&#45;&gt;1459326223072 -->\n",
       "<g id=\"edge34\" class=\"edge\">\n",
       "<title>1459326222880&#45;&gt;1459326223072</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1378.97,-2057.62C1386.42,-2048.86 1397.75,-2035.53 1406.91,-2024.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1409.46,-2027.15 1413.27,-2017.27 1404.13,-2022.62 1409.46,-2027.15\"/>\n",
       "</g>\n",
       "<!-- 1459326222592 -->\n",
       "<g id=\"node37\" class=\"node\">\n",
       "<title>1459326222592</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1451,-2146 1291,-2146 1291,-2126 1451,-2126 1451,-2146\"/>\n",
       "<text text-anchor=\"middle\" x=\"1371\" y=\"-2132.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326222592&#45;&gt;1459326222880 -->\n",
       "<g id=\"edge35\" class=\"edge\">\n",
       "<title>1459326222592&#45;&gt;1459326222880</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1371,-2125.54C1371,-2116.23 1371,-2101.7 1371,-2089.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1374.5,-2089.95 1371,-2079.95 1367.5,-2089.95 1374.5,-2089.95\"/>\n",
       "</g>\n",
       "<!-- 1459326223456 -->\n",
       "<g id=\"node38\" class=\"node\">\n",
       "<title>1459326223456</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1365,-2208 1229,-2208 1229,-2188 1365,-2188 1365,-2208\"/>\n",
       "<text text-anchor=\"middle\" x=\"1297\" y=\"-2194.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326223456&#45;&gt;1459326222592 -->\n",
       "<g id=\"edge36\" class=\"edge\">\n",
       "<title>1459326223456&#45;&gt;1459326222592</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1308.56,-2187.62C1319.92,-2178.41 1337.49,-2164.17 1351.1,-2153.14\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1353.02,-2156.08 1358.59,-2147.07 1348.61,-2150.65 1353.02,-2156.08\"/>\n",
       "</g>\n",
       "<!-- 1459326224512 -->\n",
       "<g id=\"node39\" class=\"node\">\n",
       "<title>1459326224512</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1248,-2270 1154,-2270 1154,-2250 1248,-2250 1248,-2270\"/>\n",
       "<text text-anchor=\"middle\" x=\"1201\" y=\"-2256.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459326224512&#45;&gt;1459326223552 -->\n",
       "<g id=\"edge242\" class=\"edge\">\n",
       "<title>1459326224512&#45;&gt;1459326223552</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1201,-2249.51C1201,-2228.98 1201,-2178.94 1201,-2137 1201,-2137 1201,-2137 1201,-1813 1201,-1775.39 1307.08,-1731.71 1366.25,-1710.26\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1367.4,-1713.57 1375.64,-1706.91 1365.04,-1706.97 1367.4,-1713.57\"/>\n",
       "</g>\n",
       "<!-- 1459326224512&#45;&gt;1459326223456 -->\n",
       "<g id=\"edge37\" class=\"edge\">\n",
       "<title>1459326224512&#45;&gt;1459326223456</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1216,-2249.62C1231.08,-2240.2 1254.57,-2225.52 1272.38,-2214.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1274.2,-2217.38 1280.82,-2209.11 1270.49,-2211.44 1274.2,-2217.38\"/>\n",
       "</g>\n",
       "<!-- 1459360468656 -->\n",
       "<g id=\"node40\" class=\"node\">\n",
       "<title>1459360468656</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1242,-2338 1154,-2338 1154,-2318 1242,-2318 1242,-2338\"/>\n",
       "<text text-anchor=\"middle\" x=\"1198\" y=\"-2324.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468656&#45;&gt;1459326224512 -->\n",
       "<g id=\"edge38\" class=\"edge\">\n",
       "<title>1459360468656&#45;&gt;1459326224512</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1198.43,-2317.54C1198.85,-2308.23 1199.51,-2293.7 1200.06,-2281.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1203.54,-2282.1 1200.5,-2271.95 1196.55,-2281.78 1203.54,-2282.1\"/>\n",
       "</g>\n",
       "<!-- 1459360468512 -->\n",
       "<g id=\"node41\" class=\"node\">\n",
       "<title>1459360468512</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1504,-2400 1344,-2400 1344,-2380 1504,-2380 1504,-2400\"/>\n",
       "<text text-anchor=\"middle\" x=\"1424\" y=\"-2386.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468512&#45;&gt;1459360468656 -->\n",
       "<g id=\"edge39\" class=\"edge\">\n",
       "<title>1459360468512&#45;&gt;1459360468656</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1386.82,-2379.57C1351.74,-2370.62 1297.72,-2356.69 1251,-2344 1248.07,-2343.21 1245.06,-2342.38 1242.02,-2341.54\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1243.08,-2338.2 1232.51,-2338.88 1241.2,-2344.94 1243.08,-2338.2\"/>\n",
       "</g>\n",
       "<!-- 1459360468272 -->\n",
       "<g id=\"node42\" class=\"node\">\n",
       "<title>1459360468272</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1424,-2456 1288,-2456 1288,-2436 1424,-2436 1424,-2456\"/>\n",
       "<text text-anchor=\"middle\" x=\"1356\" y=\"-2442.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468272&#45;&gt;1459360468512 -->\n",
       "<g id=\"edge40\" class=\"edge\">\n",
       "<title>1459360468272&#45;&gt;1459360468512</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1367.84,-2435.59C1377.69,-2427.77 1391.93,-2416.46 1403.61,-2407.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1405.45,-2410.2 1411.11,-2401.24 1401.1,-2404.72 1405.45,-2410.2\"/>\n",
       "</g>\n",
       "<!-- 1459360468080 -->\n",
       "<g id=\"node43\" class=\"node\">\n",
       "<title>1459360468080</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1352,-2518 1258,-2518 1258,-2498 1352,-2498 1352,-2518\"/>\n",
       "<text text-anchor=\"middle\" x=\"1305\" y=\"-2504.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468080&#45;&gt;1459360468272 -->\n",
       "<g id=\"edge41\" class=\"edge\">\n",
       "<title>1459360468080&#45;&gt;1459360468272</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1312.97,-2497.62C1320.42,-2488.86 1331.75,-2475.53 1340.91,-2464.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1343.46,-2467.15 1347.27,-2457.27 1338.13,-2462.62 1343.46,-2467.15\"/>\n",
       "</g>\n",
       "<!-- 1459360467840 -->\n",
       "<g id=\"node44\" class=\"node\">\n",
       "<title>1459360467840</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1385,-2586 1225,-2586 1225,-2566 1385,-2566 1385,-2586\"/>\n",
       "<text text-anchor=\"middle\" x=\"1305\" y=\"-2572.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360467840&#45;&gt;1459360468080 -->\n",
       "<g id=\"edge42\" class=\"edge\">\n",
       "<title>1459360467840&#45;&gt;1459360468080</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1305,-2565.54C1305,-2556.23 1305,-2541.7 1305,-2529.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1308.5,-2529.95 1305,-2519.95 1301.5,-2529.95 1308.5,-2529.95\"/>\n",
       "</g>\n",
       "<!-- 1459360467744 -->\n",
       "<g id=\"node45\" class=\"node\">\n",
       "<title>1459360467744</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1304,-2648 1168,-2648 1168,-2628 1304,-2628 1304,-2648\"/>\n",
       "<text text-anchor=\"middle\" x=\"1236\" y=\"-2634.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360467744&#45;&gt;1459360467840 -->\n",
       "<g id=\"edge43\" class=\"edge\">\n",
       "<title>1459360467744&#45;&gt;1459360467840</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1246.78,-2627.62C1257.27,-2618.5 1273.44,-2604.45 1286.07,-2593.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1288.13,-2596.31 1293.38,-2587.11 1283.54,-2591.03 1288.13,-2596.31\"/>\n",
       "</g>\n",
       "<!-- 1459360467504 -->\n",
       "<g id=\"node46\" class=\"node\">\n",
       "<title>1459360467504</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1254,-2710 1160,-2710 1160,-2690 1254,-2690 1254,-2710\"/>\n",
       "<text text-anchor=\"middle\" x=\"1207\" y=\"-2696.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360467504&#45;&gt;1459360467744 -->\n",
       "<g id=\"edge44\" class=\"edge\">\n",
       "<title>1459360467504&#45;&gt;1459360467744</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1211.53,-2689.62C1215.56,-2681.3 1221.57,-2668.86 1226.62,-2658.4\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1229.74,-2660 1230.94,-2649.48 1223.43,-2656.96 1229.74,-2660\"/>\n",
       "</g>\n",
       "<!-- 1459360467312 -->\n",
       "<g id=\"node47\" class=\"node\">\n",
       "<title>1459360467312</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1287,-2778 1127,-2778 1127,-2758 1287,-2758 1287,-2778\"/>\n",
       "<text text-anchor=\"middle\" x=\"1207\" y=\"-2764.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360467312&#45;&gt;1459360467504 -->\n",
       "<g id=\"edge45\" class=\"edge\">\n",
       "<title>1459360467312&#45;&gt;1459360467504</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1207,-2757.54C1207,-2748.23 1207,-2733.7 1207,-2721.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1210.5,-2721.95 1207,-2711.95 1203.5,-2721.95 1210.5,-2721.95\"/>\n",
       "</g>\n",
       "<!-- 1459360467216 -->\n",
       "<g id=\"node48\" class=\"node\">\n",
       "<title>1459360467216</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1235,-2840 1099,-2840 1099,-2820 1235,-2820 1235,-2840\"/>\n",
       "<text text-anchor=\"middle\" x=\"1167\" y=\"-2826.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360467216&#45;&gt;1459360467312 -->\n",
       "<g id=\"edge46\" class=\"edge\">\n",
       "<title>1459360467216&#45;&gt;1459360467312</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1173.25,-2819.62C1178.98,-2811.03 1187.62,-2798.07 1194.73,-2787.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1197.45,-2789.63 1200.09,-2779.37 1191.63,-2785.75 1197.45,-2789.63\"/>\n",
       "</g>\n",
       "<!-- 1459360466976 -->\n",
       "<g id=\"node49\" class=\"node\">\n",
       "<title>1459360466976</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1181,-2902 1087,-2902 1087,-2882 1181,-2882 1181,-2902\"/>\n",
       "<text text-anchor=\"middle\" x=\"1134\" y=\"-2888.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466976&#45;&gt;1459360467216 -->\n",
       "<g id=\"edge47\" class=\"edge\">\n",
       "<title>1459360466976&#45;&gt;1459360467216</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1139.16,-2881.62C1143.78,-2873.21 1150.72,-2860.6 1156.51,-2850.07\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1159.51,-2851.89 1161.26,-2841.44 1153.37,-2848.51 1159.51,-2851.89\"/>\n",
       "</g>\n",
       "<!-- 1459360467648 -->\n",
       "<g id=\"node212\" class=\"node\">\n",
       "<title>1459360467648</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1078,-2840 942,-2840 942,-2820 1078,-2820 1078,-2840\"/>\n",
       "<text text-anchor=\"middle\" x=\"1010\" y=\"-2826.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466976&#45;&gt;1459360467648 -->\n",
       "<g id=\"edge215\" class=\"edge\">\n",
       "<title>1459360466976&#45;&gt;1459360467648</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1114.62,-2881.62C1094.51,-2871.89 1062.81,-2856.55 1039.57,-2845.31\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1041.13,-2842.17 1030.6,-2840.97 1038.08,-2848.47 1041.13,-2842.17\"/>\n",
       "</g>\n",
       "<!-- 1459360466832 -->\n",
       "<g id=\"node50\" class=\"node\">\n",
       "<title>1459360466832</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1175,-2970 1087,-2970 1087,-2950 1175,-2950 1175,-2970\"/>\n",
       "<text text-anchor=\"middle\" x=\"1131\" y=\"-2956.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466832&#45;&gt;1459360466976 -->\n",
       "<g id=\"edge48\" class=\"edge\">\n",
       "<title>1459360466832&#45;&gt;1459360466976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1131.43,-2949.54C1131.85,-2940.23 1132.51,-2925.7 1133.06,-2913.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1136.54,-2914.1 1133.5,-2903.95 1129.55,-2913.78 1136.54,-2914.1\"/>\n",
       "</g>\n",
       "<!-- 1459360466688 -->\n",
       "<g id=\"node51\" class=\"node\">\n",
       "<title>1459360466688</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1415,-3032 1255,-3032 1255,-3012 1415,-3012 1415,-3032\"/>\n",
       "<text text-anchor=\"middle\" x=\"1335\" y=\"-3018.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466688&#45;&gt;1459360466832 -->\n",
       "<g id=\"edge49\" class=\"edge\">\n",
       "<title>1459360466688&#45;&gt;1459360466832</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1303.12,-3011.62C1268.35,-3001.4 1212.48,-2984.97 1173.88,-2973.61\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1175.02,-2970.3 1164.44,-2970.84 1173.05,-2977.01 1175.02,-2970.3\"/>\n",
       "</g>\n",
       "<!-- 1459360466544 -->\n",
       "<g id=\"node52\" class=\"node\">\n",
       "<title>1459360466544</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1335,-3088 1199,-3088 1199,-3068 1335,-3068 1335,-3088\"/>\n",
       "<text text-anchor=\"middle\" x=\"1267\" y=\"-3074.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466544&#45;&gt;1459360466688 -->\n",
       "<g id=\"edge50\" class=\"edge\">\n",
       "<title>1459360466544&#45;&gt;1459360466688</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1278.84,-3067.59C1288.69,-3059.77 1302.93,-3048.46 1314.61,-3039.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1316.45,-3042.2 1322.11,-3033.24 1312.1,-3036.72 1316.45,-3042.2\"/>\n",
       "</g>\n",
       "<!-- 1459360466160 -->\n",
       "<g id=\"node53\" class=\"node\">\n",
       "<title>1459360466160</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1263,-3150 1169,-3150 1169,-3130 1263,-3130 1263,-3150\"/>\n",
       "<text text-anchor=\"middle\" x=\"1216\" y=\"-3136.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466160&#45;&gt;1459360466544 -->\n",
       "<g id=\"edge51\" class=\"edge\">\n",
       "<title>1459360466160&#45;&gt;1459360466544</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1223.97,-3129.62C1231.42,-3120.86 1242.75,-3107.53 1251.91,-3096.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1254.46,-3099.15 1258.27,-3089.27 1249.13,-3094.62 1254.46,-3099.15\"/>\n",
       "</g>\n",
       "<!-- 1459360465920 -->\n",
       "<g id=\"node54\" class=\"node\">\n",
       "<title>1459360465920</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1296,-3218 1136,-3218 1136,-3198 1296,-3198 1296,-3218\"/>\n",
       "<text text-anchor=\"middle\" x=\"1216\" y=\"-3204.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360465920&#45;&gt;1459360466160 -->\n",
       "<g id=\"edge52\" class=\"edge\">\n",
       "<title>1459360465920&#45;&gt;1459360466160</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1216,-3197.54C1216,-3188.23 1216,-3173.7 1216,-3161.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1219.5,-3161.95 1216,-3151.95 1212.5,-3161.95 1219.5,-3161.95\"/>\n",
       "</g>\n",
       "<!-- 1459360465824 -->\n",
       "<g id=\"node55\" class=\"node\">\n",
       "<title>1459360465824</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1216,-3280 1080,-3280 1080,-3260 1216,-3260 1216,-3280\"/>\n",
       "<text text-anchor=\"middle\" x=\"1148\" y=\"-3266.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360465824&#45;&gt;1459360465920 -->\n",
       "<g id=\"edge53\" class=\"edge\">\n",
       "<title>1459360465824&#45;&gt;1459360465920</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1158.62,-3259.62C1168.96,-3250.5 1184.9,-3236.45 1197.35,-3225.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1199.35,-3228.35 1204.54,-3219.11 1194.72,-3223.11 1199.35,-3228.35\"/>\n",
       "</g>\n",
       "<!-- 1459360465488 -->\n",
       "<g id=\"node56\" class=\"node\">\n",
       "<title>1459360465488</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1144,-3342 1050,-3342 1050,-3322 1144,-3322 1144,-3342\"/>\n",
       "<text text-anchor=\"middle\" x=\"1097\" y=\"-3328.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360465488&#45;&gt;1459360465824 -->\n",
       "<g id=\"edge54\" class=\"edge\">\n",
       "<title>1459360465488&#45;&gt;1459360465824</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1104.97,-3321.62C1112.42,-3312.86 1123.75,-3299.53 1132.91,-3288.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1135.46,-3291.15 1139.27,-3281.27 1130.13,-3286.62 1135.46,-3291.15\"/>\n",
       "</g>\n",
       "<!-- 1459360465344 -->\n",
       "<g id=\"node57\" class=\"node\">\n",
       "<title>1459360465344</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1177,-3410 1017,-3410 1017,-3390 1177,-3390 1177,-3410\"/>\n",
       "<text text-anchor=\"middle\" x=\"1097\" y=\"-3396.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360465344&#45;&gt;1459360465488 -->\n",
       "<g id=\"edge55\" class=\"edge\">\n",
       "<title>1459360465344&#45;&gt;1459360465488</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1097,-3389.54C1097,-3380.23 1097,-3365.7 1097,-3353.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1100.5,-3353.95 1097,-3343.95 1093.5,-3353.95 1100.5,-3353.95\"/>\n",
       "</g>\n",
       "<!-- 1459360465248 -->\n",
       "<g id=\"node58\" class=\"node\">\n",
       "<title>1459360465248</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1091,-3472 955,-3472 955,-3452 1091,-3452 1091,-3472\"/>\n",
       "<text text-anchor=\"middle\" x=\"1023\" y=\"-3458.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360465248&#45;&gt;1459360465344 -->\n",
       "<g id=\"edge56\" class=\"edge\">\n",
       "<title>1459360465248&#45;&gt;1459360465344</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1034.56,-3451.62C1045.92,-3442.41 1063.49,-3428.17 1077.1,-3417.14\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1079.02,-3420.08 1084.59,-3411.07 1074.61,-3414.65 1079.02,-3420.08\"/>\n",
       "</g>\n",
       "<!-- 1459360466784 -->\n",
       "<g id=\"node59\" class=\"node\">\n",
       "<title>1459360466784</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"974,-3534 880,-3534 880,-3514 974,-3514 974,-3534\"/>\n",
       "<text text-anchor=\"middle\" x=\"927\" y=\"-3520.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360466784&#45;&gt;1459360466832 -->\n",
       "<g id=\"edge194\" class=\"edge\">\n",
       "<title>1459360466784&#45;&gt;1459360466832</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M927,-3513.51C927,-3492.98 927,-3442.94 927,-3401 927,-3401 927,-3401 927,-3077 927,-3039.39 1033.08,-2995.71 1092.25,-2974.26\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1093.4,-2977.57 1101.64,-2970.91 1091.04,-2970.97 1093.4,-2977.57\"/>\n",
       "</g>\n",
       "<!-- 1459360466784&#45;&gt;1459360465248 -->\n",
       "<g id=\"edge57\" class=\"edge\">\n",
       "<title>1459360466784&#45;&gt;1459360465248</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M942,-3513.62C957.08,-3504.2 980.57,-3489.52 998.38,-3478.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1000.2,-3481.38 1006.82,-3473.11 996.49,-3475.44 1000.2,-3481.38\"/>\n",
       "</g>\n",
       "<!-- 1459360468368 -->\n",
       "<g id=\"node60\" class=\"node\">\n",
       "<title>1459360468368</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"968,-3602 880,-3602 880,-3582 968,-3582 968,-3602\"/>\n",
       "<text text-anchor=\"middle\" x=\"924\" y=\"-3588.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468368&#45;&gt;1459360466784 -->\n",
       "<g id=\"edge58\" class=\"edge\">\n",
       "<title>1459360468368&#45;&gt;1459360466784</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M924.43,-3581.54C924.85,-3572.23 925.51,-3557.7 926.06,-3545.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"929.54,-3546.1 926.5,-3535.95 922.55,-3545.78 929.54,-3546.1\"/>\n",
       "</g>\n",
       "<!-- 1459360468416 -->\n",
       "<g id=\"node61\" class=\"node\">\n",
       "<title>1459360468416</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1230,-3664 1070,-3664 1070,-3644 1230,-3644 1230,-3664\"/>\n",
       "<text text-anchor=\"middle\" x=\"1150\" y=\"-3650.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468416&#45;&gt;1459360468368 -->\n",
       "<g id=\"edge59\" class=\"edge\">\n",
       "<title>1459360468416&#45;&gt;1459360468368</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1112.82,-3643.57C1077.74,-3634.62 1023.72,-3620.69 977,-3608 974.07,-3607.21 971.06,-3606.38 968.02,-3605.54\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"969.08,-3602.2 958.51,-3602.88 967.2,-3608.94 969.08,-3602.2\"/>\n",
       "</g>\n",
       "<!-- 1459164869200 -->\n",
       "<g id=\"node62\" class=\"node\">\n",
       "<title>1459164869200</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1150,-3720 1014,-3720 1014,-3700 1150,-3700 1150,-3720\"/>\n",
       "<text text-anchor=\"middle\" x=\"1082\" y=\"-3706.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459164869200&#45;&gt;1459360468416 -->\n",
       "<g id=\"edge60\" class=\"edge\">\n",
       "<title>1459164869200&#45;&gt;1459360468416</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1093.84,-3699.59C1103.69,-3691.77 1117.93,-3680.46 1129.61,-3671.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1131.45,-3674.2 1137.11,-3665.24 1127.1,-3668.72 1131.45,-3674.2\"/>\n",
       "</g>\n",
       "<!-- 1459360479504 -->\n",
       "<g id=\"node63\" class=\"node\">\n",
       "<title>1459360479504</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1078,-3782 984,-3782 984,-3762 1078,-3762 1078,-3782\"/>\n",
       "<text text-anchor=\"middle\" x=\"1031\" y=\"-3768.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360479504&#45;&gt;1459164869200 -->\n",
       "<g id=\"edge61\" class=\"edge\">\n",
       "<title>1459360479504&#45;&gt;1459164869200</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1038.97,-3761.62C1046.42,-3752.86 1057.75,-3739.53 1066.91,-3728.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1069.46,-3731.15 1073.27,-3721.27 1064.13,-3726.62 1069.46,-3731.15\"/>\n",
       "</g>\n",
       "<!-- 1459360479264 -->\n",
       "<g id=\"node64\" class=\"node\">\n",
       "<title>1459360479264</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1111,-3850 951,-3850 951,-3830 1111,-3830 1111,-3850\"/>\n",
       "<text text-anchor=\"middle\" x=\"1031\" y=\"-3836.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360479264&#45;&gt;1459360479504 -->\n",
       "<g id=\"edge62\" class=\"edge\">\n",
       "<title>1459360479264&#45;&gt;1459360479504</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1031,-3829.54C1031,-3820.23 1031,-3805.7 1031,-3793.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1034.5,-3793.95 1031,-3783.95 1027.5,-3793.95 1034.5,-3793.95\"/>\n",
       "</g>\n",
       "<!-- 1459360479072 -->\n",
       "<g id=\"node65\" class=\"node\">\n",
       "<title>1459360479072</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1030,-3912 894,-3912 894,-3892 1030,-3892 1030,-3912\"/>\n",
       "<text text-anchor=\"middle\" x=\"962\" y=\"-3898.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360479072&#45;&gt;1459360479264 -->\n",
       "<g id=\"edge63\" class=\"edge\">\n",
       "<title>1459360479072&#45;&gt;1459360479264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M972.78,-3891.62C983.27,-3882.5 999.44,-3868.45 1012.07,-3857.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1014.13,-3860.31 1019.38,-3851.11 1009.54,-3855.03 1014.13,-3860.31\"/>\n",
       "</g>\n",
       "<!-- 1459360478880 -->\n",
       "<g id=\"node66\" class=\"node\">\n",
       "<title>1459360478880</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"980,-3974 886,-3974 886,-3954 980,-3954 980,-3974\"/>\n",
       "<text text-anchor=\"middle\" x=\"933\" y=\"-3960.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478880&#45;&gt;1459360479072 -->\n",
       "<g id=\"edge64\" class=\"edge\">\n",
       "<title>1459360478880&#45;&gt;1459360479072</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M937.53,-3953.62C941.56,-3945.3 947.57,-3932.86 952.62,-3922.4\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"955.74,-3924 956.94,-3913.48 949.43,-3920.96 955.74,-3924\"/>\n",
       "</g>\n",
       "<!-- 1459360478736 -->\n",
       "<g id=\"node67\" class=\"node\">\n",
       "<title>1459360478736</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1013,-4042 853,-4042 853,-4022 1013,-4022 1013,-4042\"/>\n",
       "<text text-anchor=\"middle\" x=\"933\" y=\"-4028.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478736&#45;&gt;1459360478880 -->\n",
       "<g id=\"edge65\" class=\"edge\">\n",
       "<title>1459360478736&#45;&gt;1459360478880</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M933,-4021.54C933,-4012.23 933,-3997.7 933,-3985.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"936.5,-3985.95 933,-3975.95 929.5,-3985.95 936.5,-3985.95\"/>\n",
       "</g>\n",
       "<!-- 1459360478592 -->\n",
       "<g id=\"node68\" class=\"node\">\n",
       "<title>1459360478592</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"961,-4104 825,-4104 825,-4084 961,-4084 961,-4104\"/>\n",
       "<text text-anchor=\"middle\" x=\"893\" y=\"-4090.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478592&#45;&gt;1459360478736 -->\n",
       "<g id=\"edge66\" class=\"edge\">\n",
       "<title>1459360478592&#45;&gt;1459360478736</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M899.25,-4083.62C904.98,-4075.03 913.62,-4062.07 920.73,-4051.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"923.45,-4053.63 926.09,-4043.37 917.63,-4049.75 923.45,-4053.63\"/>\n",
       "</g>\n",
       "<!-- 1459360478352 -->\n",
       "<g id=\"node69\" class=\"node\">\n",
       "<title>1459360478352</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"907,-4166 813,-4166 813,-4146 907,-4146 907,-4166\"/>\n",
       "<text text-anchor=\"middle\" x=\"860\" y=\"-4152.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478352&#45;&gt;1459360478592 -->\n",
       "<g id=\"edge67\" class=\"edge\">\n",
       "<title>1459360478352&#45;&gt;1459360478592</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M865.16,-4145.62C869.78,-4137.21 876.72,-4124.6 882.51,-4114.07\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"885.51,-4115.89 887.26,-4105.44 879.37,-4112.51 885.51,-4115.89\"/>\n",
       "</g>\n",
       "<!-- 1459360478976 -->\n",
       "<g id=\"node166\" class=\"node\">\n",
       "<title>1459360478976</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"803,-4104 667,-4104 667,-4084 803,-4084 803,-4104\"/>\n",
       "<text text-anchor=\"middle\" x=\"735\" y=\"-4090.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478352&#45;&gt;1459360478976 -->\n",
       "<g id=\"edge167\" class=\"edge\">\n",
       "<title>1459360478352&#45;&gt;1459360478976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M840.47,-4145.62C820.1,-4135.85 787.94,-4120.41 764.49,-4109.15\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"766.29,-4106.14 755.76,-4104.96 763.26,-4112.45 766.29,-4106.14\"/>\n",
       "</g>\n",
       "<!-- 1459360478160 -->\n",
       "<g id=\"node70\" class=\"node\">\n",
       "<title>1459360478160</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"901,-4234 813,-4234 813,-4214 901,-4214 901,-4234\"/>\n",
       "<text text-anchor=\"middle\" x=\"857\" y=\"-4220.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478160&#45;&gt;1459360478352 -->\n",
       "<g id=\"edge68\" class=\"edge\">\n",
       "<title>1459360478160&#45;&gt;1459360478352</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M857.43,-4213.54C857.85,-4204.23 858.51,-4189.7 859.06,-4177.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"862.54,-4178.1 859.5,-4167.95 855.55,-4177.78 862.54,-4178.1\"/>\n",
       "</g>\n",
       "<!-- 1459360478064 -->\n",
       "<g id=\"node71\" class=\"node\">\n",
       "<title>1459360478064</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1141,-4296 981,-4296 981,-4276 1141,-4276 1141,-4296\"/>\n",
       "<text text-anchor=\"middle\" x=\"1061\" y=\"-4282.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478064&#45;&gt;1459360478160 -->\n",
       "<g id=\"edge69\" class=\"edge\">\n",
       "<title>1459360478064&#45;&gt;1459360478160</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1029.12,-4275.62C994.35,-4265.4 938.48,-4248.97 899.88,-4237.61\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"901.02,-4234.3 890.44,-4234.84 899.05,-4241.01 901.02,-4234.3\"/>\n",
       "</g>\n",
       "<!-- 1459360477920 -->\n",
       "<g id=\"node72\" class=\"node\">\n",
       "<title>1459360477920</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1061,-4352 925,-4352 925,-4332 1061,-4332 1061,-4352\"/>\n",
       "<text text-anchor=\"middle\" x=\"993\" y=\"-4338.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360477920&#45;&gt;1459360478064 -->\n",
       "<g id=\"edge70\" class=\"edge\">\n",
       "<title>1459360477920&#45;&gt;1459360478064</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1004.84,-4331.59C1014.69,-4323.77 1028.93,-4312.46 1040.61,-4303.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1042.45,-4306.2 1048.11,-4297.24 1038.1,-4300.72 1042.45,-4306.2\"/>\n",
       "</g>\n",
       "<!-- 1459360477728 -->\n",
       "<g id=\"node73\" class=\"node\">\n",
       "<title>1459360477728</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"989,-4414 895,-4414 895,-4394 989,-4394 989,-4414\"/>\n",
       "<text text-anchor=\"middle\" x=\"942\" y=\"-4400.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360477728&#45;&gt;1459360477920 -->\n",
       "<g id=\"edge71\" class=\"edge\">\n",
       "<title>1459360477728&#45;&gt;1459360477920</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M949.97,-4393.62C957.42,-4384.86 968.75,-4371.53 977.91,-4360.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"980.46,-4363.15 984.27,-4353.27 975.13,-4358.62 980.46,-4363.15\"/>\n",
       "</g>\n",
       "<!-- 1459360477392 -->\n",
       "<g id=\"node74\" class=\"node\">\n",
       "<title>1459360477392</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1022,-4482 862,-4482 862,-4462 1022,-4462 1022,-4482\"/>\n",
       "<text text-anchor=\"middle\" x=\"942\" y=\"-4468.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360477392&#45;&gt;1459360477728 -->\n",
       "<g id=\"edge72\" class=\"edge\">\n",
       "<title>1459360477392&#45;&gt;1459360477728</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M942,-4461.54C942,-4452.23 942,-4437.7 942,-4425.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"945.5,-4425.95 942,-4415.95 938.5,-4425.95 945.5,-4425.95\"/>\n",
       "</g>\n",
       "<!-- 1459360477248 -->\n",
       "<g id=\"node75\" class=\"node\">\n",
       "<title>1459360477248</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"942,-4544 806,-4544 806,-4524 942,-4524 942,-4544\"/>\n",
       "<text text-anchor=\"middle\" x=\"874\" y=\"-4530.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360477248&#45;&gt;1459360477392 -->\n",
       "<g id=\"edge73\" class=\"edge\">\n",
       "<title>1459360477248&#45;&gt;1459360477392</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M884.62,-4523.62C894.96,-4514.5 910.9,-4500.45 923.35,-4489.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"925.35,-4492.35 930.54,-4483.11 920.72,-4487.11 925.35,-4492.35\"/>\n",
       "</g>\n",
       "<!-- 1459360481088 -->\n",
       "<g id=\"node76\" class=\"node\">\n",
       "<title>1459360481088</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"870,-4606 776,-4606 776,-4586 870,-4586 870,-4606\"/>\n",
       "<text text-anchor=\"middle\" x=\"823\" y=\"-4592.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360481088&#45;&gt;1459360477248 -->\n",
       "<g id=\"edge74\" class=\"edge\">\n",
       "<title>1459360481088&#45;&gt;1459360477248</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M830.97,-4585.62C838.42,-4576.86 849.75,-4563.53 858.91,-4552.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"861.46,-4555.15 865.27,-4545.27 856.13,-4550.62 861.46,-4555.15\"/>\n",
       "</g>\n",
       "<!-- 1459360481184 -->\n",
       "<g id=\"node77\" class=\"node\">\n",
       "<title>1459360481184</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"903,-4674 743,-4674 743,-4654 903,-4654 903,-4674\"/>\n",
       "<text text-anchor=\"middle\" x=\"823\" y=\"-4660.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360481184&#45;&gt;1459360481088 -->\n",
       "<g id=\"edge75\" class=\"edge\">\n",
       "<title>1459360481184&#45;&gt;1459360481088</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M823,-4653.54C823,-4644.23 823,-4629.7 823,-4617.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"826.5,-4617.95 823,-4607.95 819.5,-4617.95 826.5,-4617.95\"/>\n",
       "</g>\n",
       "<!-- 1459360480224 -->\n",
       "<g id=\"node78\" class=\"node\">\n",
       "<title>1459360480224</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"817,-4736 681,-4736 681,-4716 817,-4716 817,-4736\"/>\n",
       "<text text-anchor=\"middle\" x=\"749\" y=\"-4722.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360480224&#45;&gt;1459360481184 -->\n",
       "<g id=\"edge76\" class=\"edge\">\n",
       "<title>1459360480224&#45;&gt;1459360481184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M760.56,-4715.62C771.92,-4706.41 789.49,-4692.17 803.1,-4681.14\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"805.02,-4684.08 810.59,-4675.07 800.61,-4678.65 805.02,-4684.08\"/>\n",
       "</g>\n",
       "<!-- 1459360478112 -->\n",
       "<g id=\"node79\" class=\"node\">\n",
       "<title>1459360478112</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"700,-4798 606,-4798 606,-4778 700,-4778 700,-4798\"/>\n",
       "<text text-anchor=\"middle\" x=\"653\" y=\"-4784.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360478112&#45;&gt;1459360478160 -->\n",
       "<g id=\"edge146\" class=\"edge\">\n",
       "<title>1459360478112&#45;&gt;1459360478160</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M653,-4777.51C653,-4756.98 653,-4706.94 653,-4665 653,-4665 653,-4665 653,-4341 653,-4303.39 759.08,-4259.71 818.25,-4238.26\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"819.4,-4241.57 827.64,-4234.91 817.04,-4234.97 819.4,-4241.57\"/>\n",
       "</g>\n",
       "<!-- 1459360478112&#45;&gt;1459360480224 -->\n",
       "<g id=\"edge77\" class=\"edge\">\n",
       "<title>1459360478112&#45;&gt;1459360480224</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M668,-4777.62C683.08,-4768.2 706.57,-4753.52 724.38,-4742.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"726.2,-4745.38 732.82,-4737.11 722.49,-4739.44 726.2,-4745.38\"/>\n",
       "</g>\n",
       "<!-- 1459360480560 -->\n",
       "<g id=\"node80\" class=\"node\">\n",
       "<title>1459360480560</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"696,-4866 608,-4866 608,-4846 696,-4846 696,-4866\"/>\n",
       "<text text-anchor=\"middle\" x=\"652\" y=\"-4852.5\" font-family=\"monospace\" font-size=\"10.00\">AddBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360480560&#45;&gt;1459360478112 -->\n",
       "<g id=\"edge78\" class=\"edge\">\n",
       "<title>1459360480560&#45;&gt;1459360478112</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M652.14,-4845.54C652.28,-4836.23 652.5,-4821.7 652.69,-4809.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"656.18,-4810 652.83,-4799.95 649.18,-4809.9 656.18,-4810\"/>\n",
       "</g>\n",
       "<!-- 1459360362704 -->\n",
       "<g id=\"node81\" class=\"node\">\n",
       "<title>1459360362704</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"958,-4928 798,-4928 798,-4908 958,-4908 958,-4928\"/>\n",
       "<text text-anchor=\"middle\" x=\"878\" y=\"-4914.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360362704&#45;&gt;1459360480560 -->\n",
       "<g id=\"edge79\" class=\"edge\">\n",
       "<title>1459360362704&#45;&gt;1459360480560</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M840.82,-4907.57C805.74,-4898.62 751.72,-4884.69 705,-4872 702.07,-4871.21 699.06,-4870.38 696.02,-4869.54\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"697.08,-4866.2 686.51,-4866.88 695.2,-4872.94 697.08,-4866.2\"/>\n",
       "</g>\n",
       "<!-- 1459360362848 -->\n",
       "<g id=\"node82\" class=\"node\">\n",
       "<title>1459360362848</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"878,-4984 742,-4984 742,-4964 878,-4964 878,-4984\"/>\n",
       "<text text-anchor=\"middle\" x=\"810\" y=\"-4970.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360362848&#45;&gt;1459360362704 -->\n",
       "<g id=\"edge80\" class=\"edge\">\n",
       "<title>1459360362848&#45;&gt;1459360362704</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M821.84,-4963.59C831.69,-4955.77 845.93,-4944.46 857.61,-4935.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"859.45,-4938.2 865.11,-4929.24 855.1,-4932.72 859.45,-4938.2\"/>\n",
       "</g>\n",
       "<!-- 1459360363040 -->\n",
       "<g id=\"node83\" class=\"node\">\n",
       "<title>1459360363040</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"806,-5046 712,-5046 712,-5026 806,-5026 806,-5046\"/>\n",
       "<text text-anchor=\"middle\" x=\"759\" y=\"-5032.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363040&#45;&gt;1459360362848 -->\n",
       "<g id=\"edge81\" class=\"edge\">\n",
       "<title>1459360363040&#45;&gt;1459360362848</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M766.97,-5025.62C774.42,-5016.86 785.75,-5003.53 794.91,-4992.75\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"797.46,-4995.15 801.27,-4985.27 792.13,-4990.62 797.46,-4995.15\"/>\n",
       "</g>\n",
       "<!-- 1459360363184 -->\n",
       "<g id=\"node84\" class=\"node\">\n",
       "<title>1459360363184</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"839,-5114 679,-5114 679,-5094 839,-5094 839,-5114\"/>\n",
       "<text text-anchor=\"middle\" x=\"759\" y=\"-5100.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363184&#45;&gt;1459360363040 -->\n",
       "<g id=\"edge82\" class=\"edge\">\n",
       "<title>1459360363184&#45;&gt;1459360363040</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M759,-5093.54C759,-5084.23 759,-5069.7 759,-5057.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"762.5,-5057.95 759,-5047.95 755.5,-5057.95 762.5,-5057.95\"/>\n",
       "</g>\n",
       "<!-- 1459360363280 -->\n",
       "<g id=\"node85\" class=\"node\">\n",
       "<title>1459360363280</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"758,-5176 622,-5176 622,-5156 758,-5156 758,-5176\"/>\n",
       "<text text-anchor=\"middle\" x=\"690\" y=\"-5162.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363280&#45;&gt;1459360363184 -->\n",
       "<g id=\"edge83\" class=\"edge\">\n",
       "<title>1459360363280&#45;&gt;1459360363184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M700.78,-5155.62C711.27,-5146.5 727.44,-5132.45 740.07,-5121.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"742.13,-5124.31 747.38,-5115.11 737.54,-5119.03 742.13,-5124.31\"/>\n",
       "</g>\n",
       "<!-- 1459360363472 -->\n",
       "<g id=\"node86\" class=\"node\">\n",
       "<title>1459360363472</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"708,-5238 614,-5238 614,-5218 708,-5218 708,-5238\"/>\n",
       "<text text-anchor=\"middle\" x=\"661\" y=\"-5224.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363472&#45;&gt;1459360363280 -->\n",
       "<g id=\"edge84\" class=\"edge\">\n",
       "<title>1459360363472&#45;&gt;1459360363280</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M665.53,-5217.62C669.56,-5209.3 675.57,-5196.86 680.62,-5186.4\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"683.74,-5188 684.94,-5177.48 677.43,-5184.96 683.74,-5188\"/>\n",
       "</g>\n",
       "<!-- 1459360363616 -->\n",
       "<g id=\"node87\" class=\"node\">\n",
       "<title>1459360363616</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"741,-5306 581,-5306 581,-5286 741,-5286 741,-5306\"/>\n",
       "<text text-anchor=\"middle\" x=\"661\" y=\"-5292.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363616&#45;&gt;1459360363472 -->\n",
       "<g id=\"edge85\" class=\"edge\">\n",
       "<title>1459360363616&#45;&gt;1459360363472</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M661,-5285.54C661,-5276.23 661,-5261.7 661,-5249.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"664.5,-5249.95 661,-5239.95 657.5,-5249.95 664.5,-5249.95\"/>\n",
       "</g>\n",
       "<!-- 1459360363712 -->\n",
       "<g id=\"node88\" class=\"node\">\n",
       "<title>1459360363712</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"661,-5368 525,-5368 525,-5348 661,-5348 661,-5368\"/>\n",
       "<text text-anchor=\"middle\" x=\"593\" y=\"-5354.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363712&#45;&gt;1459360363616 -->\n",
       "<g id=\"edge86\" class=\"edge\">\n",
       "<title>1459360363712&#45;&gt;1459360363616</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M603.62,-5347.62C613.96,-5338.5 629.9,-5324.45 642.35,-5313.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"644.35,-5316.35 649.54,-5307.11 639.72,-5311.11 644.35,-5316.35\"/>\n",
       "</g>\n",
       "<!-- 1459360363904 -->\n",
       "<g id=\"node89\" class=\"node\">\n",
       "<title>1459360363904</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"589,-5430 399,-5430 399,-5410 589,-5410 589,-5430\"/>\n",
       "<text text-anchor=\"middle\" x=\"494\" y=\"-5416.5\" font-family=\"monospace\" font-size=\"10.00\">MaxPool2DWithIndicesBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363904&#45;&gt;1459360363712 -->\n",
       "<g id=\"edge87\" class=\"edge\">\n",
       "<title>1459360363904&#45;&gt;1459360363712</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M509.47,-5409.62C525.09,-5400.16 549.47,-5385.38 567.87,-5374.23\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"569.61,-5377.27 576.35,-5369.09 565.98,-5371.28 569.61,-5377.27\"/>\n",
       "</g>\n",
       "<!-- 1459360363376 -->\n",
       "<g id=\"node120\" class=\"node\">\n",
       "<title>1459360363376</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"384,-5368 248,-5368 248,-5348 384,-5348 384,-5368\"/>\n",
       "<text text-anchor=\"middle\" x=\"316\" y=\"-5354.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360363904&#45;&gt;1459360363376 -->\n",
       "<g id=\"edge119\" class=\"edge\">\n",
       "<title>1459360363904&#45;&gt;1459360363376</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M466.19,-5409.62C436.23,-5399.53 388.35,-5383.39 354.72,-5372.05\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"355.94,-5368.77 345.34,-5368.89 353.7,-5375.4 355.94,-5368.77\"/>\n",
       "</g>\n",
       "<!-- 1459360364048 -->\n",
       "<g id=\"node90\" class=\"node\">\n",
       "<title>1459360364048</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"541,-5498 447,-5498 447,-5478 541,-5478 541,-5498\"/>\n",
       "<text text-anchor=\"middle\" x=\"494\" y=\"-5484.5\" font-family=\"monospace\" font-size=\"10.00\">ReluBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360364048&#45;&gt;1459360363904 -->\n",
       "<g id=\"edge88\" class=\"edge\">\n",
       "<title>1459360364048&#45;&gt;1459360363904</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M494,-5477.54C494,-5468.23 494,-5453.7 494,-5441.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"497.5,-5441.95 494,-5431.95 490.5,-5441.95 497.5,-5441.95\"/>\n",
       "</g>\n",
       "<!-- 1459360364144 -->\n",
       "<g id=\"node91\" class=\"node\">\n",
       "<title>1459360364144</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"574,-5560 414,-5560 414,-5540 574,-5540 574,-5560\"/>\n",
       "<text text-anchor=\"middle\" x=\"494\" y=\"-5546.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360364144&#45;&gt;1459360364048 -->\n",
       "<g id=\"edge89\" class=\"edge\">\n",
       "<title>1459360364144&#45;&gt;1459360364048</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M494,-5539.62C494,-5531.56 494,-5519.65 494,-5509.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"497.5,-5509.63 494,-5499.63 490.5,-5509.63 497.5,-5509.63\"/>\n",
       "</g>\n",
       "<!-- 1459360364240 -->\n",
       "<g id=\"node92\" class=\"node\">\n",
       "<title>1459360364240</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"426,-5616 290,-5616 290,-5596 426,-5596 426,-5616\"/>\n",
       "<text text-anchor=\"middle\" x=\"358\" y=\"-5602.5\" font-family=\"monospace\" font-size=\"10.00\">ConvolutionBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360364240&#45;&gt;1459360364144 -->\n",
       "<g id=\"edge90\" class=\"edge\">\n",
       "<title>1459360364240&#45;&gt;1459360364144</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M381.69,-5595.59C403.2,-5587.05 435.2,-5574.35 459.54,-5564.68\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"460.72,-5567.98 468.72,-5561.04 458.13,-5561.48 460.72,-5567.98\"/>\n",
       "</g>\n",
       "<!-- 1459360364432 -->\n",
       "<g id=\"node93\" class=\"node\">\n",
       "<title>1459360364432</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"305,-5678 205,-5678 205,-5658 305,-5658 305,-5678\"/>\n",
       "<text text-anchor=\"middle\" x=\"255\" y=\"-5664.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360364432&#45;&gt;1459360364240 -->\n",
       "<g id=\"edge91\" class=\"edge\">\n",
       "<title>1459360364432&#45;&gt;1459360364240</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M271.09,-5657.62C287.42,-5648.11 312.95,-5633.24 332.12,-5622.08\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"333.83,-5625.13 340.71,-5617.07 330.31,-5619.08 333.83,-5625.13\"/>\n",
       "</g>\n",
       "<!-- 1459359533872 -->\n",
       "<g id=\"node94\" class=\"node\">\n",
       "<title>1459359533872</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"305,-5752 205,-5752 205,-5720 305,-5720 305,-5752\"/>\n",
       "<text text-anchor=\"middle\" x=\"255\" y=\"-5738.5\" font-family=\"monospace\" font-size=\"10.00\">conv1.weight</text>\n",
       "<text text-anchor=\"middle\" x=\"255\" y=\"-5726.5\" font-family=\"monospace\" font-size=\"10.00\"> (64, 3, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359533872&#45;&gt;1459360364432 -->\n",
       "<g id=\"edge92\" class=\"edge\">\n",
       "<title>1459359533872&#45;&gt;1459360364432</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M255,-5719.69C255,-5710.8 255,-5699.46 255,-5689.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"258.5,-5689.83 255,-5679.83 251.5,-5689.83 258.5,-5689.83\"/>\n",
       "</g>\n",
       "<!-- 1459360364384 -->\n",
       "<g id=\"node95\" class=\"node\">\n",
       "<title>1459360364384</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"423,-5678 323,-5678 323,-5658 423,-5658 423,-5678\"/>\n",
       "<text text-anchor=\"middle\" x=\"373\" y=\"-5664.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360364384&#45;&gt;1459360364240 -->\n",
       "<g id=\"edge93\" class=\"edge\">\n",
       "<title>1459360364384&#45;&gt;1459360364240</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M370.66,-5657.62C368.62,-5649.48 365.6,-5637.39 363.02,-5627.07\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"366.47,-5626.43 360.65,-5617.58 359.68,-5628.13 366.47,-5626.43\"/>\n",
       "</g>\n",
       "<!-- 1459359533952 -->\n",
       "<g id=\"node96\" class=\"node\">\n",
       "<title>1459359533952</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"411,-5752 335,-5752 335,-5720 411,-5720 411,-5752\"/>\n",
       "<text text-anchor=\"middle\" x=\"373\" y=\"-5738.5\" font-family=\"monospace\" font-size=\"10.00\">conv1.bias</text>\n",
       "<text text-anchor=\"middle\" x=\"373\" y=\"-5726.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359533952&#45;&gt;1459360364384 -->\n",
       "<g id=\"edge94\" class=\"edge\">\n",
       "<title>1459359533952&#45;&gt;1459360364384</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M373,-5719.69C373,-5710.8 373,-5699.46 373,-5689.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"376.5,-5689.83 373,-5679.83 369.5,-5689.83 376.5,-5689.83\"/>\n",
       "</g>\n",
       "<!-- 1459360364192 -->\n",
       "<g id=\"node97\" class=\"node\">\n",
       "<title>1459360364192</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"544,-5616 444,-5616 444,-5596 544,-5596 544,-5616\"/>\n",
       "<text text-anchor=\"middle\" x=\"494\" y=\"-5602.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360364192&#45;&gt;1459360364144 -->\n",
       "<g id=\"edge95\" class=\"edge\">\n",
       "<title>1459360364192&#45;&gt;1459360364144</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M494,-5595.59C494,-5589.01 494,-5579.96 494,-5571.73\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"497.5,-5571.81 494,-5561.81 490.5,-5571.81 497.5,-5571.81\"/>\n",
       "</g>\n",
       "<!-- 1459211581216 -->\n",
       "<g id=\"node98\" class=\"node\">\n",
       "<title>1459211581216</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"532,-5684 456,-5684 456,-5652 532,-5652 532,-5684\"/>\n",
       "<text text-anchor=\"middle\" x=\"494\" y=\"-5670.5\" font-family=\"monospace\" font-size=\"10.00\">bn1.weight</text>\n",
       "<text text-anchor=\"middle\" x=\"494\" y=\"-5658.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459211581216&#45;&gt;1459360364192 -->\n",
       "<g id=\"edge96\" class=\"edge\">\n",
       "<title>1459211581216&#45;&gt;1459360364192</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M494,-5651.55C494,-5644.34 494,-5635.66 494,-5627.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"497.5,-5627.92 494,-5617.92 490.5,-5627.92 497.5,-5627.92\"/>\n",
       "</g>\n",
       "<!-- 1459360363952 -->\n",
       "<g id=\"node99\" class=\"node\">\n",
       "<title>1459360363952</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"662,-5616 562,-5616 562,-5596 662,-5596 662,-5616\"/>\n",
       "<text text-anchor=\"middle\" x=\"612\" y=\"-5602.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363952&#45;&gt;1459360364144 -->\n",
       "<g id=\"edge97\" class=\"edge\">\n",
       "<title>1459360363952&#45;&gt;1459360364144</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M591.45,-5595.59C573.12,-5587.21 546.01,-5574.8 525.04,-5565.21\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"526.64,-5562.09 516.09,-5561.11 523.73,-5568.45 526.64,-5562.09\"/>\n",
       "</g>\n",
       "<!-- 1459359553552 -->\n",
       "<g id=\"node100\" class=\"node\">\n",
       "<title>1459359553552</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"644,-5684 580,-5684 580,-5652 644,-5652 644,-5684\"/>\n",
       "<text text-anchor=\"middle\" x=\"612\" y=\"-5670.5\" font-family=\"monospace\" font-size=\"10.00\">bn1.bias</text>\n",
       "<text text-anchor=\"middle\" x=\"612\" y=\"-5658.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359553552&#45;&gt;1459360363952 -->\n",
       "<g id=\"edge98\" class=\"edge\">\n",
       "<title>1459359553552&#45;&gt;1459360363952</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M612,-5651.55C612,-5644.34 612,-5635.66 612,-5627.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"615.5,-5627.92 612,-5617.92 608.5,-5627.92 615.5,-5627.92\"/>\n",
       "</g>\n",
       "<!-- 1459360363856 -->\n",
       "<g id=\"node101\" class=\"node\">\n",
       "<title>1459360363856</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"707,-5430 607,-5430 607,-5410 707,-5410 707,-5430\"/>\n",
       "<text text-anchor=\"middle\" x=\"657\" y=\"-5416.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363856&#45;&gt;1459360363712 -->\n",
       "<g id=\"edge99\" class=\"edge\">\n",
       "<title>1459360363856&#45;&gt;1459360363712</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M647,-5409.62C637.36,-5400.59 622.57,-5386.72 610.9,-5375.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"613.51,-5373.43 603.82,-5369.15 608.73,-5378.54 613.51,-5373.43\"/>\n",
       "</g>\n",
       "<!-- 1459359558608 -->\n",
       "<g id=\"node102\" class=\"node\">\n",
       "<title>1459359558608</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"728,-5504 586,-5504 586,-5472 728,-5472 728,-5504\"/>\n",
       "<text text-anchor=\"middle\" x=\"657\" y=\"-5490.5\" font-family=\"monospace\" font-size=\"10.00\">layer1.0.conv1.weight</text>\n",
       "<text text-anchor=\"middle\" x=\"657\" y=\"-5478.5\" font-family=\"monospace\" font-size=\"10.00\"> (64, 64, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359558608&#45;&gt;1459360363856 -->\n",
       "<g id=\"edge100\" class=\"edge\">\n",
       "<title>1459359558608&#45;&gt;1459360363856</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M657,-5471.69C657,-5462.8 657,-5451.46 657,-5441.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"660.5,-5441.83 657,-5431.83 653.5,-5441.83 660.5,-5441.83\"/>\n",
       "</g>\n",
       "<!-- 1459360363664 -->\n",
       "<g id=\"node103\" class=\"node\">\n",
       "<title>1459360363664</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"779,-5368 679,-5368 679,-5348 779,-5348 779,-5368\"/>\n",
       "<text text-anchor=\"middle\" x=\"729\" y=\"-5354.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363664&#45;&gt;1459360363616 -->\n",
       "<g id=\"edge101\" class=\"edge\">\n",
       "<title>1459360363664&#45;&gt;1459360363616</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M718.38,-5347.62C708.04,-5338.5 692.1,-5324.45 679.65,-5313.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"682.28,-5311.11 672.46,-5307.11 677.65,-5316.35 682.28,-5311.11\"/>\n",
       "</g>\n",
       "<!-- 1459359558448 -->\n",
       "<g id=\"node104\" class=\"node\">\n",
       "<title>1459359558448</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"779,-5436 725,-5436 725,-5404 779,-5404 779,-5436\"/>\n",
       "<text text-anchor=\"middle\" x=\"752\" y=\"-5410.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359558448&#45;&gt;1459360363664 -->\n",
       "<g id=\"edge102\" class=\"edge\">\n",
       "<title>1459359558448&#45;&gt;1459360363664</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M746.08,-5403.55C743.22,-5396.08 739.75,-5387.03 736.68,-5379.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"740,-5377.91 733.15,-5369.82 733.46,-5380.41 740,-5377.91\"/>\n",
       "</g>\n",
       "<!-- 1459360363520 -->\n",
       "<g id=\"node105\" class=\"node\">\n",
       "<title>1459360363520</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"897,-5368 797,-5368 797,-5348 897,-5348 897,-5368\"/>\n",
       "<text text-anchor=\"middle\" x=\"847\" y=\"-5354.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363520&#45;&gt;1459360363616 -->\n",
       "<g id=\"edge103\" class=\"edge\">\n",
       "<title>1459360363520&#45;&gt;1459360363616</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M817.94,-5347.62C786.5,-5337.48 736.17,-5321.25 701,-5309.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"702.2,-5306.61 691.61,-5306.87 700.05,-5313.27 702.2,-5306.61\"/>\n",
       "</g>\n",
       "<!-- 1459359558128 -->\n",
       "<g id=\"node106\" class=\"node\">\n",
       "<title>1459359558128</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"874,-5436 820,-5436 820,-5404 874,-5404 874,-5436\"/>\n",
       "<text text-anchor=\"middle\" x=\"847\" y=\"-5410.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359558128&#45;&gt;1459360363520 -->\n",
       "<g id=\"edge104\" class=\"edge\">\n",
       "<title>1459359558128&#45;&gt;1459360363520</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M847,-5403.55C847,-5396.34 847,-5387.66 847,-5379.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"850.5,-5379.92 847,-5369.92 843.5,-5379.92 850.5,-5379.92\"/>\n",
       "</g>\n",
       "<!-- 1459360363424 -->\n",
       "<g id=\"node107\" class=\"node\">\n",
       "<title>1459360363424</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"826,-5238 726,-5238 726,-5218 826,-5218 826,-5238\"/>\n",
       "<text text-anchor=\"middle\" x=\"776\" y=\"-5224.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363424&#45;&gt;1459360363280 -->\n",
       "<g id=\"edge105\" class=\"edge\">\n",
       "<title>1459360363424&#45;&gt;1459360363280</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M762.56,-5217.62C749.18,-5208.29 728.4,-5193.79 712.5,-5182.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"714.79,-5180.03 704.58,-5177.18 710.78,-5185.77 714.79,-5180.03\"/>\n",
       "</g>\n",
       "<!-- 1459358642064 -->\n",
       "<g id=\"node108\" class=\"node\">\n",
       "<title>1459358642064</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"865,-5312 759,-5312 759,-5280 865,-5280 865,-5312\"/>\n",
       "<text text-anchor=\"middle\" x=\"812\" y=\"-5286.5\" font-family=\"monospace\" font-size=\"10.00\"> (64, 64, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459358642064&#45;&gt;1459360363424 -->\n",
       "<g id=\"edge106\" class=\"edge\">\n",
       "<title>1459358642064&#45;&gt;1459360363424</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M803.65,-5279.69C798.53,-5270.3 791.92,-5258.18 786.45,-5248.15\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"789.67,-5246.75 781.81,-5239.64 783.52,-5250.1 789.67,-5246.75\"/>\n",
       "</g>\n",
       "<!-- 1459360363232 -->\n",
       "<g id=\"node109\" class=\"node\">\n",
       "<title>1459360363232</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"876,-5176 776,-5176 776,-5156 876,-5156 876,-5176\"/>\n",
       "<text text-anchor=\"middle\" x=\"826\" y=\"-5162.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363232&#45;&gt;1459360363184 -->\n",
       "<g id=\"edge107\" class=\"edge\">\n",
       "<title>1459360363232&#45;&gt;1459360363184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M815.53,-5155.62C805.44,-5146.59 789.95,-5132.72 777.74,-5121.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"780.09,-5119.19 770.3,-5115.12 775.42,-5124.4 780.09,-5119.19\"/>\n",
       "</g>\n",
       "<!-- 1459359621424 -->\n",
       "<g id=\"node110\" class=\"node\">\n",
       "<title>1459359621424</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"898,-5244 844,-5244 844,-5212 898,-5212 898,-5244\"/>\n",
       "<text text-anchor=\"middle\" x=\"871\" y=\"-5218.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359621424&#45;&gt;1459360363232 -->\n",
       "<g id=\"edge108\" class=\"edge\">\n",
       "<title>1459359621424&#45;&gt;1459360363232</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M859.41,-5211.55C853.42,-5203.56 846.07,-5193.76 839.79,-5185.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"842.76,-5183.52 833.96,-5177.62 837.16,-5187.72 842.76,-5183.52\"/>\n",
       "</g>\n",
       "<!-- 1459360363088 -->\n",
       "<g id=\"node111\" class=\"node\">\n",
       "<title>1459360363088</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"994,-5176 894,-5176 894,-5156 994,-5156 994,-5176\"/>\n",
       "<text text-anchor=\"middle\" x=\"944\" y=\"-5162.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363088&#45;&gt;1459360363184 -->\n",
       "<g id=\"edge109\" class=\"edge\">\n",
       "<title>1459360363088&#45;&gt;1459360363184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M915.09,-5155.62C883.82,-5145.48 833.76,-5129.25 798.79,-5117.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"800.04,-5114.63 789.45,-5114.87 797.88,-5121.29 800.04,-5114.63\"/>\n",
       "</g>\n",
       "<!-- 1459359621664 -->\n",
       "<g id=\"node112\" class=\"node\">\n",
       "<title>1459359621664</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"971,-5244 917,-5244 917,-5212 971,-5212 971,-5244\"/>\n",
       "<text text-anchor=\"middle\" x=\"944\" y=\"-5218.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359621664&#45;&gt;1459360363088 -->\n",
       "<g id=\"edge110\" class=\"edge\">\n",
       "<title>1459359621664&#45;&gt;1459360363088</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M944,-5211.55C944,-5204.34 944,-5195.66 944,-5187.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"947.5,-5187.92 944,-5177.92 940.5,-5187.92 947.5,-5187.92\"/>\n",
       "</g>\n",
       "<!-- 1459360362992 -->\n",
       "<g id=\"node113\" class=\"node\">\n",
       "<title>1459360362992</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"924,-5046 824,-5046 824,-5026 924,-5026 924,-5046\"/>\n",
       "<text text-anchor=\"middle\" x=\"874\" y=\"-5032.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360362992&#45;&gt;1459360362848 -->\n",
       "<g id=\"edge111\" class=\"edge\">\n",
       "<title>1459360362992&#45;&gt;1459360362848</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M864,-5025.62C854.36,-5016.59 839.57,-5002.72 827.9,-4991.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"830.51,-4989.43 820.82,-4985.15 825.73,-4994.54 830.51,-4989.43\"/>\n",
       "</g>\n",
       "<!-- 1459359621264 -->\n",
       "<g id=\"node114\" class=\"node\">\n",
       "<title>1459359621264</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"969,-5120 857,-5120 857,-5088 969,-5088 969,-5120\"/>\n",
       "<text text-anchor=\"middle\" x=\"913\" y=\"-5094.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 64, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359621264&#45;&gt;1459360362992 -->\n",
       "<g id=\"edge112\" class=\"edge\">\n",
       "<title>1459359621264&#45;&gt;1459360362992</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M903.95,-5087.69C898.4,-5078.3 891.24,-5066.18 885.32,-5056.15\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"888.38,-5054.45 880.28,-5047.62 882.35,-5058.01 888.38,-5054.45\"/>\n",
       "</g>\n",
       "<!-- 1459360362800 -->\n",
       "<g id=\"node115\" class=\"node\">\n",
       "<title>1459360362800</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"996,-4984 896,-4984 896,-4964 996,-4964 996,-4984\"/>\n",
       "<text text-anchor=\"middle\" x=\"946\" y=\"-4970.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360362800&#45;&gt;1459360362704 -->\n",
       "<g id=\"edge113\" class=\"edge\">\n",
       "<title>1459360362800&#45;&gt;1459360362704</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M934.16,-4963.59C924.31,-4955.77 910.07,-4944.46 898.39,-4935.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"900.9,-4932.72 890.89,-4929.24 896.55,-4938.2 900.9,-4932.72\"/>\n",
       "</g>\n",
       "<!-- 1459359621184 -->\n",
       "<g id=\"node116\" class=\"node\">\n",
       "<title>1459359621184</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"996,-5052 942,-5052 942,-5020 996,-5020 996,-5052\"/>\n",
       "<text text-anchor=\"middle\" x=\"969\" y=\"-5026.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359621184&#45;&gt;1459360362800 -->\n",
       "<g id=\"edge114\" class=\"edge\">\n",
       "<title>1459359621184&#45;&gt;1459360362800</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M963.08,-5019.55C960.22,-5012.08 956.75,-5003.03 953.68,-4995.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"957,-4993.91 950.15,-4985.82 950.46,-4996.41 957,-4993.91\"/>\n",
       "</g>\n",
       "<!-- 1459360362752 -->\n",
       "<g id=\"node117\" class=\"node\">\n",
       "<title>1459360362752</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1114,-4984 1014,-4984 1014,-4964 1114,-4964 1114,-4984\"/>\n",
       "<text text-anchor=\"middle\" x=\"1064\" y=\"-4970.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360362752&#45;&gt;1459360362704 -->\n",
       "<g id=\"edge115\" class=\"edge\">\n",
       "<title>1459360362752&#45;&gt;1459360362704</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1031.6,-4963.59C1001.12,-4954.74 955.24,-4941.43 921.57,-4931.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"922.68,-4928.33 912.11,-4928.9 920.73,-4935.05 922.68,-4928.33\"/>\n",
       "</g>\n",
       "<!-- 1459359621984 -->\n",
       "<g id=\"node118\" class=\"node\">\n",
       "<title>1459359621984</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1091,-5052 1037,-5052 1037,-5020 1091,-5020 1091,-5052\"/>\n",
       "<text text-anchor=\"middle\" x=\"1064\" y=\"-5026.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359621984&#45;&gt;1459360362752 -->\n",
       "<g id=\"edge116\" class=\"edge\">\n",
       "<title>1459359621984&#45;&gt;1459360362752</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1064,-5019.55C1064,-5012.34 1064,-5003.66 1064,-4995.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1067.5,-4995.92 1064,-4985.92 1060.5,-4995.92 1067.5,-4995.92\"/>\n",
       "</g>\n",
       "<!-- 1459360362656 -->\n",
       "<g id=\"node119\" class=\"node\">\n",
       "<title>1459360362656</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"326,-5306 166,-5306 166,-5286 326,-5286 326,-5306\"/>\n",
       "<text text-anchor=\"middle\" x=\"246\" y=\"-5292.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360362656&#45;&gt;1459360480560 -->\n",
       "<g id=\"edge117\" class=\"edge\">\n",
       "<title>1459360362656&#45;&gt;1459360480560</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M302.95,-5285.54C399.28,-5267.92 584,-5226.37 584,-5167 584,-5167 584,-5167 584,-4973 584,-4933.58 613.59,-4895.69 633.73,-4874.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"636.07,-4877.08 640.61,-4867.51 631.09,-4872.16 636.07,-4877.08\"/>\n",
       "</g>\n",
       "<!-- 1459360363376&#45;&gt;1459360362656 -->\n",
       "<g id=\"edge118\" class=\"edge\">\n",
       "<title>1459360363376&#45;&gt;1459360362656</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M305.06,-5347.62C294.42,-5338.5 278.02,-5324.45 265.2,-5313.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"267.65,-5310.95 257.78,-5307.1 263.1,-5316.26 267.65,-5310.95\"/>\n",
       "</g>\n",
       "<!-- 1459360363760 -->\n",
       "<g id=\"node121\" class=\"node\">\n",
       "<title>1459360363760</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"263,-5430 163,-5430 163,-5410 263,-5410 263,-5430\"/>\n",
       "<text text-anchor=\"middle\" x=\"213\" y=\"-5416.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363760&#45;&gt;1459360363376 -->\n",
       "<g id=\"edge120\" class=\"edge\">\n",
       "<title>1459360363760&#45;&gt;1459360363376</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M229.09,-5409.62C245.42,-5400.11 270.95,-5385.24 290.12,-5374.08\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"291.83,-5377.13 298.71,-5369.07 288.31,-5371.08 291.83,-5377.13\"/>\n",
       "</g>\n",
       "<!-- 1459359622304 -->\n",
       "<g id=\"node122\" class=\"node\">\n",
       "<title>1459359622304</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"269,-5504 157,-5504 157,-5472 269,-5472 269,-5504\"/>\n",
       "<text text-anchor=\"middle\" x=\"213\" y=\"-5478.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 64, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359622304&#45;&gt;1459360363760 -->\n",
       "<g id=\"edge121\" class=\"edge\">\n",
       "<title>1459359622304&#45;&gt;1459360363760</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M213,-5471.69C213,-5462.8 213,-5451.46 213,-5441.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"216.5,-5441.83 213,-5431.83 209.5,-5441.83 216.5,-5441.83\"/>\n",
       "</g>\n",
       "<!-- 1459360363808 -->\n",
       "<g id=\"node123\" class=\"node\">\n",
       "<title>1459360363808</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"381,-5430 281,-5430 281,-5410 381,-5410 381,-5430\"/>\n",
       "<text text-anchor=\"middle\" x=\"331\" y=\"-5416.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360363808&#45;&gt;1459360363376 -->\n",
       "<g id=\"edge122\" class=\"edge\">\n",
       "<title>1459360363808&#45;&gt;1459360363376</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M328.66,-5409.62C326.62,-5401.48 323.6,-5389.39 321.02,-5379.07\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"324.47,-5378.43 318.65,-5369.58 317.68,-5380.13 324.47,-5378.43\"/>\n",
       "</g>\n",
       "<!-- 1459359623824 -->\n",
       "<g id=\"node124\" class=\"node\">\n",
       "<title>1459359623824</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"358,-5504 304,-5504 304,-5472 358,-5472 358,-5504\"/>\n",
       "<text text-anchor=\"middle\" x=\"331\" y=\"-5478.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359623824&#45;&gt;1459360363808 -->\n",
       "<g id=\"edge123\" class=\"edge\">\n",
       "<title>1459359623824&#45;&gt;1459360363808</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M331,-5471.69C331,-5462.8 331,-5451.46 331,-5441.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"334.5,-5441.83 331,-5431.83 327.5,-5441.83 334.5,-5441.83\"/>\n",
       "</g>\n",
       "<!-- 1459360362944 -->\n",
       "<g id=\"node125\" class=\"node\">\n",
       "<title>1459360362944</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"100,-5368 0,-5368 0,-5348 100,-5348 100,-5368\"/>\n",
       "<text text-anchor=\"middle\" x=\"50\" y=\"-5354.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360362944&#45;&gt;1459360362656 -->\n",
       "<g id=\"edge124\" class=\"edge\">\n",
       "<title>1459360362944&#45;&gt;1459360362656</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M80.62,-5347.62C113.9,-5337.44 167.25,-5321.11 204.32,-5309.76\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"205.28,-5313.12 213.82,-5306.85 203.23,-5306.43 205.28,-5313.12\"/>\n",
       "</g>\n",
       "<!-- 1459359623104 -->\n",
       "<g id=\"node126\" class=\"node\">\n",
       "<title>1459359623104</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"73,-5436 19,-5436 19,-5404 73,-5404 73,-5436\"/>\n",
       "<text text-anchor=\"middle\" x=\"46\" y=\"-5410.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359623104&#45;&gt;1459360362944 -->\n",
       "<g id=\"edge125\" class=\"edge\">\n",
       "<title>1459359623104&#45;&gt;1459360362944</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M47.03,-5403.55C47.51,-5396.34 48.09,-5387.66 48.61,-5379.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"52.1,-5380.13 49.27,-5369.92 45.11,-5379.66 52.1,-5380.13\"/>\n",
       "</g>\n",
       "<!-- 1459360362896 -->\n",
       "<g id=\"node127\" class=\"node\">\n",
       "<title>1459360362896</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"226,-5368 126,-5368 126,-5348 226,-5348 226,-5368\"/>\n",
       "<text text-anchor=\"middle\" x=\"176\" y=\"-5354.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360362896&#45;&gt;1459360362656 -->\n",
       "<g id=\"edge126\" class=\"edge\">\n",
       "<title>1459360362896&#45;&gt;1459360362656</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M186.94,-5347.62C197.58,-5338.5 213.98,-5324.45 226.8,-5313.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"228.9,-5316.26 234.22,-5307.1 224.35,-5310.95 228.9,-5316.26\"/>\n",
       "</g>\n",
       "<!-- 1459359624544 -->\n",
       "<g id=\"node128\" class=\"node\">\n",
       "<title>1459359624544</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"145,-5436 91,-5436 91,-5404 145,-5404 145,-5436\"/>\n",
       "<text text-anchor=\"middle\" x=\"118\" y=\"-5410.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359624544&#45;&gt;1459360362896 -->\n",
       "<g id=\"edge127\" class=\"edge\">\n",
       "<title>1459359624544&#45;&gt;1459360362896</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M132.94,-5403.55C140.91,-5395.3 150.75,-5385.12 159.01,-5376.57\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"161.42,-5379.12 165.85,-5369.5 156.39,-5374.25 161.42,-5379.12\"/>\n",
       "</g>\n",
       "<!-- 1459360480320 -->\n",
       "<g id=\"node129\" class=\"node\">\n",
       "<title>1459360480320</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"819,-4798 719,-4798 719,-4778 819,-4778 819,-4798\"/>\n",
       "<text text-anchor=\"middle\" x=\"769\" y=\"-4784.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360480320&#45;&gt;1459360480224 -->\n",
       "<g id=\"edge128\" class=\"edge\">\n",
       "<title>1459360480320&#45;&gt;1459360480224</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M765.88,-4777.62C763.13,-4769.39 759.04,-4757.13 755.58,-4746.74\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"759,-4745.93 752.52,-4737.55 752.36,-4748.14 759,-4745.93\"/>\n",
       "</g>\n",
       "<!-- 1459359624144 -->\n",
       "<g id=\"node130\" class=\"node\">\n",
       "<title>1459359624144</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"826,-4872 714,-4872 714,-4840 826,-4840 826,-4872\"/>\n",
       "<text text-anchor=\"middle\" x=\"770\" y=\"-4846.5\" font-family=\"monospace\" font-size=\"10.00\"> (64, 128, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359624144&#45;&gt;1459360480320 -->\n",
       "<g id=\"edge129\" class=\"edge\">\n",
       "<title>1459359624144&#45;&gt;1459360480320</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M769.77,-4839.69C769.63,-4830.8 769.46,-4819.46 769.31,-4809.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"772.82,-4809.78 769.16,-4799.83 765.82,-4809.88 772.82,-4809.78\"/>\n",
       "</g>\n",
       "<!-- 1459360481232 -->\n",
       "<g id=\"node131\" class=\"node\">\n",
       "<title>1459360481232</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"935,-4736 835,-4736 835,-4716 935,-4716 935,-4736\"/>\n",
       "<text text-anchor=\"middle\" x=\"885\" y=\"-4722.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360481232&#45;&gt;1459360481184 -->\n",
       "<g id=\"edge130\" class=\"edge\">\n",
       "<title>1459360481232&#45;&gt;1459360481184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M875.31,-4715.62C866.07,-4706.68 851.92,-4692.99 840.67,-4682.1\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"843.12,-4679.6 833.5,-4675.17 838.26,-4684.63 843.12,-4679.6\"/>\n",
       "</g>\n",
       "<!-- 1459359623664 -->\n",
       "<g id=\"node132\" class=\"node\">\n",
       "<title>1459359623664</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"912,-4804 858,-4804 858,-4772 912,-4772 912,-4804\"/>\n",
       "<text text-anchor=\"middle\" x=\"885\" y=\"-4778.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359623664&#45;&gt;1459360481232 -->\n",
       "<g id=\"edge131\" class=\"edge\">\n",
       "<title>1459359623664&#45;&gt;1459360481232</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M885,-4771.55C885,-4764.34 885,-4755.66 885,-4747.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"888.5,-4747.92 885,-4737.92 881.5,-4747.92 888.5,-4747.92\"/>\n",
       "</g>\n",
       "<!-- 1459360481136 -->\n",
       "<g id=\"node133\" class=\"node\">\n",
       "<title>1459360481136</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1053,-4736 953,-4736 953,-4716 1053,-4716 1053,-4736\"/>\n",
       "<text text-anchor=\"middle\" x=\"1003\" y=\"-4722.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360481136&#45;&gt;1459360481184 -->\n",
       "<g id=\"edge132\" class=\"edge\">\n",
       "<title>1459360481136&#45;&gt;1459360481184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M974.88,-4715.62C944.45,-4705.48 895.74,-4689.25 861.71,-4677.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"863.25,-4674.73 852.66,-4674.89 861.04,-4681.37 863.25,-4674.73\"/>\n",
       "</g>\n",
       "<!-- 1459359622944 -->\n",
       "<g id=\"node134\" class=\"node\">\n",
       "<title>1459359622944</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1030,-4804 976,-4804 976,-4772 1030,-4772 1030,-4804\"/>\n",
       "<text text-anchor=\"middle\" x=\"1003\" y=\"-4778.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359622944&#45;&gt;1459360481136 -->\n",
       "<g id=\"edge133\" class=\"edge\">\n",
       "<title>1459359622944&#45;&gt;1459360481136</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1003,-4771.55C1003,-4764.34 1003,-4755.66 1003,-4747.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1006.5,-4747.92 1003,-4737.92 999.5,-4747.92 1006.5,-4747.92\"/>\n",
       "</g>\n",
       "<!-- 1459360480896 -->\n",
       "<g id=\"node135\" class=\"node\">\n",
       "<title>1459360480896</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"988,-4606 888,-4606 888,-4586 988,-4586 988,-4606\"/>\n",
       "<text text-anchor=\"middle\" x=\"938\" y=\"-4592.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360480896&#45;&gt;1459360477248 -->\n",
       "<g id=\"edge134\" class=\"edge\">\n",
       "<title>1459360480896&#45;&gt;1459360477248</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M928,-4585.62C918.36,-4576.59 903.57,-4562.72 891.9,-4551.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"894.51,-4549.43 884.82,-4545.15 889.73,-4554.54 894.51,-4549.43\"/>\n",
       "</g>\n",
       "<!-- 1459359623984 -->\n",
       "<g id=\"node136\" class=\"node\">\n",
       "<title>1459359623984</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1027,-4680 921,-4680 921,-4648 1027,-4648 1027,-4680\"/>\n",
       "<text text-anchor=\"middle\" x=\"974\" y=\"-4654.5\" font-family=\"monospace\" font-size=\"10.00\"> (64, 64, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359623984&#45;&gt;1459360480896 -->\n",
       "<g id=\"edge135\" class=\"edge\">\n",
       "<title>1459359623984&#45;&gt;1459360480896</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M965.65,-4647.69C960.53,-4638.3 953.92,-4626.18 948.45,-4616.15\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"951.67,-4614.75 943.81,-4607.64 945.52,-4618.1 951.67,-4614.75\"/>\n",
       "</g>\n",
       "<!-- 1459360477344 -->\n",
       "<g id=\"node137\" class=\"node\">\n",
       "<title>1459360477344</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1060,-4544 960,-4544 960,-4524 1060,-4524 1060,-4544\"/>\n",
       "<text text-anchor=\"middle\" x=\"1010\" y=\"-4530.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360477344&#45;&gt;1459360477392 -->\n",
       "<g id=\"edge136\" class=\"edge\">\n",
       "<title>1459360477344&#45;&gt;1459360477392</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M999.38,-4523.62C989.04,-4514.5 973.1,-4500.45 960.65,-4489.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"963.28,-4487.11 953.46,-4483.11 958.65,-4492.35 963.28,-4487.11\"/>\n",
       "</g>\n",
       "<!-- 1459359625024 -->\n",
       "<g id=\"node138\" class=\"node\">\n",
       "<title>1459359625024</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1060,-4612 1006,-4612 1006,-4580 1060,-4580 1060,-4612\"/>\n",
       "<text text-anchor=\"middle\" x=\"1033\" y=\"-4586.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359625024&#45;&gt;1459360477344 -->\n",
       "<g id=\"edge137\" class=\"edge\">\n",
       "<title>1459359625024&#45;&gt;1459360477344</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1027.08,-4579.55C1024.22,-4572.08 1020.75,-4563.03 1017.68,-4555.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1021,-4553.91 1014.15,-4545.82 1014.46,-4556.41 1021,-4553.91\"/>\n",
       "</g>\n",
       "<!-- 1459360477632 -->\n",
       "<g id=\"node139\" class=\"node\">\n",
       "<title>1459360477632</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1178,-4544 1078,-4544 1078,-4524 1178,-4524 1178,-4544\"/>\n",
       "<text text-anchor=\"middle\" x=\"1128\" y=\"-4530.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360477632&#45;&gt;1459360477392 -->\n",
       "<g id=\"edge138\" class=\"edge\">\n",
       "<title>1459360477632&#45;&gt;1459360477392</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1098.94,-4523.62C1067.5,-4513.48 1017.17,-4497.25 982,-4485.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"983.2,-4482.61 972.61,-4482.87 981.05,-4489.27 983.2,-4482.61\"/>\n",
       "</g>\n",
       "<!-- 1459359622224 -->\n",
       "<g id=\"node140\" class=\"node\">\n",
       "<title>1459359622224</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1155,-4612 1101,-4612 1101,-4580 1155,-4580 1155,-4612\"/>\n",
       "<text text-anchor=\"middle\" x=\"1128\" y=\"-4586.5\" font-family=\"monospace\" font-size=\"10.00\"> (64)</text>\n",
       "</g>\n",
       "<!-- 1459359622224&#45;&gt;1459360477632 -->\n",
       "<g id=\"edge139\" class=\"edge\">\n",
       "<title>1459359622224&#45;&gt;1459360477632</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1128,-4579.55C1128,-4572.34 1128,-4563.66 1128,-4555.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1131.5,-4555.92 1128,-4545.92 1124.5,-4555.92 1131.5,-4555.92\"/>\n",
       "</g>\n",
       "<!-- 1459360477776 -->\n",
       "<g id=\"node141\" class=\"node\">\n",
       "<title>1459360477776</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1107,-4414 1007,-4414 1007,-4394 1107,-4394 1107,-4414\"/>\n",
       "<text text-anchor=\"middle\" x=\"1057\" y=\"-4400.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360477776&#45;&gt;1459360477920 -->\n",
       "<g id=\"edge140\" class=\"edge\">\n",
       "<title>1459360477776&#45;&gt;1459360477920</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1047,-4393.62C1037.36,-4384.59 1022.57,-4370.72 1010.9,-4359.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1013.51,-4357.43 1003.82,-4353.15 1008.73,-4362.54 1013.51,-4357.43\"/>\n",
       "</g>\n",
       "<!-- 1459359622864 -->\n",
       "<g id=\"node142\" class=\"node\">\n",
       "<title>1459359622864</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1152,-4488 1040,-4488 1040,-4456 1152,-4456 1152,-4488\"/>\n",
       "<text text-anchor=\"middle\" x=\"1096\" y=\"-4462.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 64, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359622864&#45;&gt;1459360477776 -->\n",
       "<g id=\"edge141\" class=\"edge\">\n",
       "<title>1459359622864&#45;&gt;1459360477776</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1086.95,-4455.69C1081.4,-4446.3 1074.24,-4434.18 1068.32,-4424.15\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1071.38,-4422.45 1063.28,-4415.62 1065.35,-4426.01 1071.38,-4422.45\"/>\n",
       "</g>\n",
       "<!-- 1459360477968 -->\n",
       "<g id=\"node143\" class=\"node\">\n",
       "<title>1459360477968</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1179,-4352 1079,-4352 1079,-4332 1179,-4332 1179,-4352\"/>\n",
       "<text text-anchor=\"middle\" x=\"1129\" y=\"-4338.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360477968&#45;&gt;1459360478064 -->\n",
       "<g id=\"edge142\" class=\"edge\">\n",
       "<title>1459360477968&#45;&gt;1459360478064</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1117.16,-4331.59C1107.31,-4323.77 1093.07,-4312.46 1081.39,-4303.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1083.9,-4300.72 1073.89,-4297.24 1079.55,-4306.2 1083.9,-4300.72\"/>\n",
       "</g>\n",
       "<!-- 1459359622704 -->\n",
       "<g id=\"node144\" class=\"node\">\n",
       "<title>1459359622704</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1179,-4420 1125,-4420 1125,-4388 1179,-4388 1179,-4420\"/>\n",
       "<text text-anchor=\"middle\" x=\"1152\" y=\"-4394.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359622704&#45;&gt;1459360477968 -->\n",
       "<g id=\"edge143\" class=\"edge\">\n",
       "<title>1459359622704&#45;&gt;1459360477968</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1146.08,-4387.55C1143.22,-4380.08 1139.75,-4371.03 1136.68,-4363.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1140,-4361.91 1133.15,-4353.82 1133.46,-4364.41 1140,-4361.91\"/>\n",
       "</g>\n",
       "<!-- 1459360478016 -->\n",
       "<g id=\"node145\" class=\"node\">\n",
       "<title>1459360478016</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1297,-4352 1197,-4352 1197,-4332 1297,-4332 1297,-4352\"/>\n",
       "<text text-anchor=\"middle\" x=\"1247\" y=\"-4338.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478016&#45;&gt;1459360478064 -->\n",
       "<g id=\"edge144\" class=\"edge\">\n",
       "<title>1459360478016&#45;&gt;1459360478064</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1214.6,-4331.59C1184.12,-4322.74 1138.24,-4309.43 1104.57,-4299.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1105.68,-4296.33 1095.11,-4296.9 1103.73,-4303.05 1105.68,-4296.33\"/>\n",
       "</g>\n",
       "<!-- 1459359622784 -->\n",
       "<g id=\"node146\" class=\"node\">\n",
       "<title>1459359622784</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1274,-4420 1220,-4420 1220,-4388 1274,-4388 1274,-4420\"/>\n",
       "<text text-anchor=\"middle\" x=\"1247\" y=\"-4394.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359622784&#45;&gt;1459360478016 -->\n",
       "<g id=\"edge145\" class=\"edge\">\n",
       "<title>1459359622784&#45;&gt;1459360478016</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1247,-4387.55C1247,-4380.34 1247,-4371.66 1247,-4363.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1250.5,-4363.92 1247,-4353.92 1243.5,-4363.92 1250.5,-4363.92\"/>\n",
       "</g>\n",
       "<!-- 1459360478400 -->\n",
       "<g id=\"node147\" class=\"node\">\n",
       "<title>1459360478400</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1025,-4166 925,-4166 925,-4146 1025,-4146 1025,-4166\"/>\n",
       "<text text-anchor=\"middle\" x=\"975\" y=\"-4152.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478400&#45;&gt;1459360478592 -->\n",
       "<g id=\"edge147\" class=\"edge\">\n",
       "<title>1459360478400&#45;&gt;1459360478592</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M962.19,-4145.62C949.55,-4136.38 929.99,-4122.07 914.89,-4111.01\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"917.08,-4108.28 906.94,-4105.2 912.95,-4113.93 917.08,-4108.28\"/>\n",
       "</g>\n",
       "<!-- 1459359622144 -->\n",
       "<g id=\"node148\" class=\"node\">\n",
       "<title>1459359622144</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1037,-4240 919,-4240 919,-4208 1037,-4208 1037,-4240\"/>\n",
       "<text text-anchor=\"middle\" x=\"978\" y=\"-4214.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 128, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359622144&#45;&gt;1459360478400 -->\n",
       "<g id=\"edge148\" class=\"edge\">\n",
       "<title>1459359622144&#45;&gt;1459360478400</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M977.3,-4207.69C976.9,-4198.8 976.38,-4187.46 975.94,-4177.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"979.44,-4177.66 975.49,-4167.83 972.45,-4177.98 979.44,-4177.66\"/>\n",
       "</g>\n",
       "<!-- 1459360478640 -->\n",
       "<g id=\"node149\" class=\"node\">\n",
       "<title>1459360478640</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1079,-4104 979,-4104 979,-4084 1079,-4084 1079,-4104\"/>\n",
       "<text text-anchor=\"middle\" x=\"1029\" y=\"-4090.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478640&#45;&gt;1459360478736 -->\n",
       "<g id=\"edge149\" class=\"edge\">\n",
       "<title>1459360478640&#45;&gt;1459360478736</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1014,-4083.62C998.92,-4074.2 975.43,-4059.52 957.62,-4048.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"959.51,-4045.44 949.18,-4043.11 955.8,-4051.38 959.51,-4045.44\"/>\n",
       "</g>\n",
       "<!-- 1459359621824 -->\n",
       "<g id=\"node150\" class=\"node\">\n",
       "<title>1459359621824</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1097,-4172 1043,-4172 1043,-4140 1097,-4140 1097,-4172\"/>\n",
       "<text text-anchor=\"middle\" x=\"1070\" y=\"-4146.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359621824&#45;&gt;1459360478640 -->\n",
       "<g id=\"edge150\" class=\"edge\">\n",
       "<title>1459359621824&#45;&gt;1459360478640</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1059.44,-4139.55C1054.04,-4131.65 1047.43,-4121.97 1041.75,-4113.66\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1044.81,-4111.94 1036.28,-4105.66 1039.03,-4115.89 1044.81,-4111.94\"/>\n",
       "</g>\n",
       "<!-- 1459360478832 -->\n",
       "<g id=\"node151\" class=\"node\">\n",
       "<title>1459360478832</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1197,-4104 1097,-4104 1097,-4084 1197,-4084 1197,-4104\"/>\n",
       "<text text-anchor=\"middle\" x=\"1147\" y=\"-4090.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478832&#45;&gt;1459360478736 -->\n",
       "<g id=\"edge151\" class=\"edge\">\n",
       "<title>1459360478832&#45;&gt;1459360478736</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1113.56,-4083.62C1076.92,-4073.35 1017.97,-4056.82 977.46,-4045.47\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"978.59,-4042.15 968.01,-4042.82 976.7,-4048.89 978.59,-4042.15\"/>\n",
       "</g>\n",
       "<!-- 1459359621584 -->\n",
       "<g id=\"node152\" class=\"node\">\n",
       "<title>1459359621584</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1174,-4172 1120,-4172 1120,-4140 1174,-4140 1174,-4172\"/>\n",
       "<text text-anchor=\"middle\" x=\"1147\" y=\"-4146.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359621584&#45;&gt;1459360478832 -->\n",
       "<g id=\"edge152\" class=\"edge\">\n",
       "<title>1459359621584&#45;&gt;1459360478832</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1147,-4139.55C1147,-4132.34 1147,-4123.66 1147,-4115.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1150.5,-4115.92 1147,-4105.92 1143.5,-4115.92 1150.5,-4115.92\"/>\n",
       "</g>\n",
       "<!-- 1459360478928 -->\n",
       "<g id=\"node153\" class=\"node\">\n",
       "<title>1459360478928</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1098,-3974 998,-3974 998,-3954 1098,-3954 1098,-3974\"/>\n",
       "<text text-anchor=\"middle\" x=\"1048\" y=\"-3960.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478928&#45;&gt;1459360479072 -->\n",
       "<g id=\"edge153\" class=\"edge\">\n",
       "<title>1459360478928&#45;&gt;1459360479072</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1034.56,-3953.62C1021.18,-3944.29 1000.4,-3929.79 984.5,-3918.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"986.79,-3916.03 976.58,-3913.18 982.78,-3921.77 986.79,-3916.03\"/>\n",
       "</g>\n",
       "<!-- 1459359627600 -->\n",
       "<g id=\"node154\" class=\"node\">\n",
       "<title>1459359627600</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1149,-4048 1031,-4048 1031,-4016 1149,-4016 1149,-4048\"/>\n",
       "<text text-anchor=\"middle\" x=\"1090\" y=\"-4022.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 128, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359627600&#45;&gt;1459360478928 -->\n",
       "<g id=\"edge154\" class=\"edge\">\n",
       "<title>1459359627600&#45;&gt;1459360478928</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1080.26,-4015.69C1074.22,-4006.2 1066.41,-3993.92 1059.99,-3983.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1063.06,-3982.15 1054.74,-3975.59 1057.16,-3985.91 1063.06,-3982.15\"/>\n",
       "</g>\n",
       "<!-- 1459360479168 -->\n",
       "<g id=\"node155\" class=\"node\">\n",
       "<title>1459360479168</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1148,-3912 1048,-3912 1048,-3892 1148,-3892 1148,-3912\"/>\n",
       "<text text-anchor=\"middle\" x=\"1098\" y=\"-3898.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360479168&#45;&gt;1459360479264 -->\n",
       "<g id=\"edge155\" class=\"edge\">\n",
       "<title>1459360479168&#45;&gt;1459360479264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1087.53,-3891.62C1077.44,-3882.59 1061.95,-3868.72 1049.74,-3857.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1052.09,-3855.19 1042.3,-3851.12 1047.42,-3860.4 1052.09,-3855.19\"/>\n",
       "</g>\n",
       "<!-- 1459359627440 -->\n",
       "<g id=\"node156\" class=\"node\">\n",
       "<title>1459359627440</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1170,-3980 1116,-3980 1116,-3948 1170,-3948 1170,-3980\"/>\n",
       "<text text-anchor=\"middle\" x=\"1143\" y=\"-3954.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359627440&#45;&gt;1459360479168 -->\n",
       "<g id=\"edge156\" class=\"edge\">\n",
       "<title>1459359627440&#45;&gt;1459360479168</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1131.41,-3947.55C1125.42,-3939.56 1118.07,-3929.76 1111.79,-3921.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1114.76,-3919.52 1105.96,-3913.62 1109.16,-3923.72 1114.76,-3919.52\"/>\n",
       "</g>\n",
       "<!-- 1459360479360 -->\n",
       "<g id=\"node157\" class=\"node\">\n",
       "<title>1459360479360</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1266,-3912 1166,-3912 1166,-3892 1266,-3892 1266,-3912\"/>\n",
       "<text text-anchor=\"middle\" x=\"1216\" y=\"-3898.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360479360&#45;&gt;1459360479264 -->\n",
       "<g id=\"edge157\" class=\"edge\">\n",
       "<title>1459360479360&#45;&gt;1459360479264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1187.09,-3891.62C1155.82,-3881.48 1105.76,-3865.25 1070.79,-3853.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1072.04,-3850.63 1061.45,-3850.87 1069.88,-3857.29 1072.04,-3850.63\"/>\n",
       "</g>\n",
       "<!-- 1459359626640 -->\n",
       "<g id=\"node158\" class=\"node\">\n",
       "<title>1459359626640</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1243,-3980 1189,-3980 1189,-3948 1243,-3948 1243,-3980\"/>\n",
       "<text text-anchor=\"middle\" x=\"1216\" y=\"-3954.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359626640&#45;&gt;1459360479360 -->\n",
       "<g id=\"edge158\" class=\"edge\">\n",
       "<title>1459359626640&#45;&gt;1459360479360</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1216,-3947.55C1216,-3940.34 1216,-3931.66 1216,-3923.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1219.5,-3923.92 1216,-3913.92 1212.5,-3923.92 1219.5,-3923.92\"/>\n",
       "</g>\n",
       "<!-- 1459360479552 -->\n",
       "<g id=\"node159\" class=\"node\">\n",
       "<title>1459360479552</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1196,-3782 1096,-3782 1096,-3762 1196,-3762 1196,-3782\"/>\n",
       "<text text-anchor=\"middle\" x=\"1146\" y=\"-3768.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360479552&#45;&gt;1459164869200 -->\n",
       "<g id=\"edge159\" class=\"edge\">\n",
       "<title>1459360479552&#45;&gt;1459164869200</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1136,-3761.62C1126.36,-3752.59 1111.57,-3738.72 1099.9,-3727.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1102.51,-3725.43 1092.82,-3721.15 1097.73,-3730.54 1102.51,-3725.43\"/>\n",
       "</g>\n",
       "<!-- 1459359776096 -->\n",
       "<g id=\"node160\" class=\"node\">\n",
       "<title>1459359776096</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1247,-3856 1129,-3856 1129,-3824 1247,-3824 1247,-3856\"/>\n",
       "<text text-anchor=\"middle\" x=\"1188\" y=\"-3830.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 128, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359776096&#45;&gt;1459360479552 -->\n",
       "<g id=\"edge160\" class=\"edge\">\n",
       "<title>1459359776096&#45;&gt;1459360479552</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1178.26,-3823.69C1172.22,-3814.2 1164.41,-3801.92 1157.99,-3791.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1161.06,-3790.15 1152.74,-3783.59 1155.16,-3793.91 1161.06,-3790.15\"/>\n",
       "</g>\n",
       "<!-- 1459360480752 -->\n",
       "<g id=\"node161\" class=\"node\">\n",
       "<title>1459360480752</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1268,-3720 1168,-3720 1168,-3700 1268,-3700 1268,-3720\"/>\n",
       "<text text-anchor=\"middle\" x=\"1218\" y=\"-3706.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360480752&#45;&gt;1459360468416 -->\n",
       "<g id=\"edge161\" class=\"edge\">\n",
       "<title>1459360480752&#45;&gt;1459360468416</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1206.16,-3699.59C1196.31,-3691.77 1182.07,-3680.46 1170.39,-3671.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1172.9,-3668.72 1162.89,-3665.24 1168.55,-3674.2 1172.9,-3668.72\"/>\n",
       "</g>\n",
       "<!-- 1459211725216 -->\n",
       "<g id=\"node162\" class=\"node\">\n",
       "<title>1459211725216</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1268,-3788 1214,-3788 1214,-3756 1268,-3756 1268,-3788\"/>\n",
       "<text text-anchor=\"middle\" x=\"1241\" y=\"-3762.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459211725216&#45;&gt;1459360480752 -->\n",
       "<g id=\"edge162\" class=\"edge\">\n",
       "<title>1459211725216&#45;&gt;1459360480752</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1235.08,-3755.55C1232.22,-3748.08 1228.75,-3739.03 1225.68,-3731.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1229,-3729.91 1222.15,-3721.82 1222.46,-3732.41 1229,-3729.91\"/>\n",
       "</g>\n",
       "<!-- 1459360480848 -->\n",
       "<g id=\"node163\" class=\"node\">\n",
       "<title>1459360480848</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1386,-3720 1286,-3720 1286,-3700 1386,-3700 1386,-3720\"/>\n",
       "<text text-anchor=\"middle\" x=\"1336\" y=\"-3706.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360480848&#45;&gt;1459360468416 -->\n",
       "<g id=\"edge163\" class=\"edge\">\n",
       "<title>1459360480848&#45;&gt;1459360468416</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1303.6,-3699.59C1273.12,-3690.74 1227.24,-3677.43 1193.57,-3667.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1194.68,-3664.33 1184.11,-3664.9 1192.73,-3671.05 1194.68,-3664.33\"/>\n",
       "</g>\n",
       "<!-- 1459325890864 -->\n",
       "<g id=\"node164\" class=\"node\">\n",
       "<title>1459325890864</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1363,-3788 1309,-3788 1309,-3756 1363,-3756 1363,-3788\"/>\n",
       "<text text-anchor=\"middle\" x=\"1336\" y=\"-3762.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459325890864&#45;&gt;1459360480848 -->\n",
       "<g id=\"edge164\" class=\"edge\">\n",
       "<title>1459325890864&#45;&gt;1459360480848</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1336,-3755.55C1336,-3748.34 1336,-3739.66 1336,-3731.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1339.5,-3731.92 1336,-3721.92 1332.5,-3731.92 1339.5,-3731.92\"/>\n",
       "</g>\n",
       "<!-- 1459360467600 -->\n",
       "<g id=\"node165\" class=\"node\">\n",
       "<title>1459360467600</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"775,-4042 615,-4042 615,-4022 775,-4022 775,-4042\"/>\n",
       "<text text-anchor=\"middle\" x=\"695\" y=\"-4028.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360467600&#45;&gt;1459360468368 -->\n",
       "<g id=\"edge165\" class=\"edge\">\n",
       "<title>1459360467600&#45;&gt;1459360468368</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M727.19,-4021.52C774.18,-4005.47 856,-3968.17 856,-3903 856,-3903 856,-3903 856,-3709 856,-3669.58 885.59,-3631.69 905.73,-3610.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"908.07,-3613.08 912.61,-3603.51 903.09,-3608.16 908.07,-3613.08\"/>\n",
       "</g>\n",
       "<!-- 1459360478976&#45;&gt;1459360467600 -->\n",
       "<g id=\"edge166\" class=\"edge\">\n",
       "<title>1459360478976&#45;&gt;1459360467600</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M728.75,-4083.62C723.02,-4075.03 714.38,-4062.07 707.27,-4051.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"710.37,-4049.75 701.91,-4043.37 704.55,-4053.63 710.37,-4049.75\"/>\n",
       "</g>\n",
       "<!-- 1459360478544 -->\n",
       "<g id=\"node167\" class=\"node\">\n",
       "<title>1459360478544</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"677,-4166 577,-4166 577,-4146 677,-4146 677,-4166\"/>\n",
       "<text text-anchor=\"middle\" x=\"627\" y=\"-4152.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478544&#45;&gt;1459360478976 -->\n",
       "<g id=\"edge168\" class=\"edge\">\n",
       "<title>1459360478544&#45;&gt;1459360478976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M643.88,-4145.62C661.15,-4136.03 688.26,-4120.97 708.42,-4109.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"709.88,-4112.96 716.92,-4105.04 706.48,-4106.84 709.88,-4112.96\"/>\n",
       "</g>\n",
       "<!-- 1459325890624 -->\n",
       "<g id=\"node168\" class=\"node\">\n",
       "<title>1459325890624</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"686,-4240 568,-4240 568,-4208 686,-4208 686,-4240\"/>\n",
       "<text text-anchor=\"middle\" x=\"627\" y=\"-4214.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 128, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459325890624&#45;&gt;1459360478544 -->\n",
       "<g id=\"edge169\" class=\"edge\">\n",
       "<title>1459325890624&#45;&gt;1459360478544</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M627,-4207.69C627,-4198.8 627,-4187.46 627,-4177.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"630.5,-4177.83 627,-4167.83 623.5,-4177.83 630.5,-4177.83\"/>\n",
       "</g>\n",
       "<!-- 1459360478496 -->\n",
       "<g id=\"node169\" class=\"node\">\n",
       "<title>1459360478496</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"795,-4166 695,-4166 695,-4146 795,-4146 795,-4166\"/>\n",
       "<text text-anchor=\"middle\" x=\"745\" y=\"-4152.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360478496&#45;&gt;1459360478976 -->\n",
       "<g id=\"edge170\" class=\"edge\">\n",
       "<title>1459360478496&#45;&gt;1459360478976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M743.44,-4145.62C742.09,-4137.56 740.11,-4125.65 738.4,-4115.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"741.86,-4114.89 736.77,-4105.61 734.96,-4116.05 741.86,-4114.89\"/>\n",
       "</g>\n",
       "<!-- 1459175378672 -->\n",
       "<g id=\"node170\" class=\"node\">\n",
       "<title>1459175378672</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"772,-4240 718,-4240 718,-4208 772,-4208 772,-4240\"/>\n",
       "<text text-anchor=\"middle\" x=\"745\" y=\"-4214.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459175378672&#45;&gt;1459360478496 -->\n",
       "<g id=\"edge171\" class=\"edge\">\n",
       "<title>1459175378672&#45;&gt;1459360478496</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M745,-4207.69C745,-4198.8 745,-4187.46 745,-4177.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"748.5,-4177.83 745,-4167.83 741.5,-4177.83 748.5,-4177.83\"/>\n",
       "</g>\n",
       "<!-- 1459360480944 -->\n",
       "<g id=\"node171\" class=\"node\">\n",
       "<title>1459360480944</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"520,-4104 420,-4104 420,-4084 520,-4084 520,-4104\"/>\n",
       "<text text-anchor=\"middle\" x=\"470\" y=\"-4090.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360480944&#45;&gt;1459360467600 -->\n",
       "<g id=\"edge172\" class=\"edge\">\n",
       "<title>1459360480944&#45;&gt;1459360467600</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M505.16,-4083.62C543.85,-4073.31 606.19,-4056.68 648.8,-4045.32\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"649.5,-4048.76 658.26,-4042.8 647.69,-4041.99 649.5,-4048.76\"/>\n",
       "</g>\n",
       "<!-- 1459132985968 -->\n",
       "<g id=\"node172\" class=\"node\">\n",
       "<title>1459132985968</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"487,-4172 433,-4172 433,-4140 487,-4140 487,-4172\"/>\n",
       "<text text-anchor=\"middle\" x=\"460\" y=\"-4146.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459132985968&#45;&gt;1459360480944 -->\n",
       "<g id=\"edge173\" class=\"edge\">\n",
       "<title>1459132985968&#45;&gt;1459360480944</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M462.58,-4139.55C463.79,-4132.26 465.26,-4123.45 466.57,-4115.6\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"469.99,-4116.34 468.18,-4105.9 463.09,-4115.19 469.99,-4116.34\"/>\n",
       "</g>\n",
       "<!-- 1459360480992 -->\n",
       "<g id=\"node173\" class=\"node\">\n",
       "<title>1459360480992</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"645,-4104 545,-4104 545,-4084 645,-4084 645,-4104\"/>\n",
       "<text text-anchor=\"middle\" x=\"595\" y=\"-4090.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360480992&#45;&gt;1459360467600 -->\n",
       "<g id=\"edge174\" class=\"edge\">\n",
       "<title>1459360480992&#45;&gt;1459360467600</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M610.62,-4083.62C626.4,-4074.16 651.03,-4059.38 669.62,-4048.23\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"671.41,-4051.23 678.19,-4043.09 667.81,-4045.23 671.41,-4051.23\"/>\n",
       "</g>\n",
       "<!-- 1459132986288 -->\n",
       "<g id=\"node174\" class=\"node\">\n",
       "<title>1459132986288</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"559,-4172 505,-4172 505,-4140 559,-4140 559,-4172\"/>\n",
       "<text text-anchor=\"middle\" x=\"532\" y=\"-4146.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459132986288&#45;&gt;1459360480992 -->\n",
       "<g id=\"edge175\" class=\"edge\">\n",
       "<title>1459132986288&#45;&gt;1459360480992</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M548.22,-4139.55C556.97,-4131.22 567.8,-4120.91 576.83,-4112.3\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"579.2,-4114.88 584.03,-4105.45 574.37,-4109.81 579.2,-4114.88\"/>\n",
       "</g>\n",
       "<!-- 1459360467984 -->\n",
       "<g id=\"node175\" class=\"node\">\n",
       "<title>1459360467984</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1094,-3534 994,-3534 994,-3514 1094,-3514 1094,-3534\"/>\n",
       "<text text-anchor=\"middle\" x=\"1044\" y=\"-3520.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467984&#45;&gt;1459360465248 -->\n",
       "<g id=\"edge176\" class=\"edge\">\n",
       "<title>1459360467984&#45;&gt;1459360465248</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1040.72,-3513.62C1037.84,-3505.39 1033.54,-3493.13 1029.91,-3482.74\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1033.3,-3481.82 1026.69,-3473.54 1026.69,-3484.14 1033.3,-3481.82\"/>\n",
       "</g>\n",
       "<!-- 1459132986128 -->\n",
       "<g id=\"node176\" class=\"node\">\n",
       "<title>1459132986128</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1104,-3608 986,-3608 986,-3576 1104,-3576 1104,-3608\"/>\n",
       "<text text-anchor=\"middle\" x=\"1045\" y=\"-3582.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 256, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459132986128&#45;&gt;1459360467984 -->\n",
       "<g id=\"edge177\" class=\"edge\">\n",
       "<title>1459132986128&#45;&gt;1459360467984</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1044.77,-3575.69C1044.63,-3566.8 1044.46,-3555.46 1044.31,-3545.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1047.82,-3545.78 1044.16,-3535.83 1040.82,-3545.88 1047.82,-3545.78\"/>\n",
       "</g>\n",
       "<!-- 1459360465296 -->\n",
       "<g id=\"node177\" class=\"node\">\n",
       "<title>1459360465296</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1209,-3472 1109,-3472 1109,-3452 1209,-3452 1209,-3472\"/>\n",
       "<text text-anchor=\"middle\" x=\"1159\" y=\"-3458.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360465296&#45;&gt;1459360465344 -->\n",
       "<g id=\"edge178\" class=\"edge\">\n",
       "<title>1459360465296&#45;&gt;1459360465344</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1149.31,-3451.62C1140.07,-3442.68 1125.92,-3428.99 1114.67,-3418.1\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1117.12,-3415.6 1107.5,-3411.17 1112.26,-3420.63 1117.12,-3415.6\"/>\n",
       "</g>\n",
       "<!-- 1459329990224 -->\n",
       "<g id=\"node178\" class=\"node\">\n",
       "<title>1459329990224</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1186,-3540 1132,-3540 1132,-3508 1186,-3508 1186,-3540\"/>\n",
       "<text text-anchor=\"middle\" x=\"1159\" y=\"-3514.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459329990224&#45;&gt;1459360465296 -->\n",
       "<g id=\"edge179\" class=\"edge\">\n",
       "<title>1459329990224&#45;&gt;1459360465296</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1159,-3507.55C1159,-3500.34 1159,-3491.66 1159,-3483.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1162.5,-3483.92 1159,-3473.92 1155.5,-3483.92 1162.5,-3483.92\"/>\n",
       "</g>\n",
       "<!-- 1459360465440 -->\n",
       "<g id=\"node179\" class=\"node\">\n",
       "<title>1459360465440</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1327,-3472 1227,-3472 1227,-3452 1327,-3452 1327,-3472\"/>\n",
       "<text text-anchor=\"middle\" x=\"1277\" y=\"-3458.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360465440&#45;&gt;1459360465344 -->\n",
       "<g id=\"edge180\" class=\"edge\">\n",
       "<title>1459360465440&#45;&gt;1459360465344</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1248.88,-3451.62C1218.45,-3441.48 1169.74,-3425.25 1135.71,-3413.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1137.25,-3410.73 1126.66,-3410.89 1135.04,-3417.37 1137.25,-3410.73\"/>\n",
       "</g>\n",
       "<!-- 1459329986784 -->\n",
       "<g id=\"node180\" class=\"node\">\n",
       "<title>1459329986784</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1304,-3540 1250,-3540 1250,-3508 1304,-3508 1304,-3540\"/>\n",
       "<text text-anchor=\"middle\" x=\"1277\" y=\"-3514.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459329986784&#45;&gt;1459360465440 -->\n",
       "<g id=\"edge181\" class=\"edge\">\n",
       "<title>1459329986784&#45;&gt;1459360465440</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1277,-3507.55C1277,-3500.34 1277,-3491.66 1277,-3483.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1280.5,-3483.92 1277,-3473.92 1273.5,-3483.92 1280.5,-3483.92\"/>\n",
       "</g>\n",
       "<!-- 1459360465632 -->\n",
       "<g id=\"node181\" class=\"node\">\n",
       "<title>1459360465632</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1262,-3342 1162,-3342 1162,-3322 1262,-3322 1262,-3342\"/>\n",
       "<text text-anchor=\"middle\" x=\"1212\" y=\"-3328.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360465632&#45;&gt;1459360465824 -->\n",
       "<g id=\"edge182\" class=\"edge\">\n",
       "<title>1459360465632&#45;&gt;1459360465824</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1202,-3321.62C1192.36,-3312.59 1177.57,-3298.72 1165.9,-3287.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1168.51,-3285.43 1158.82,-3281.15 1163.73,-3290.54 1168.51,-3285.43\"/>\n",
       "</g>\n",
       "<!-- 1459329987984 -->\n",
       "<g id=\"node182\" class=\"node\">\n",
       "<title>1459329987984</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1313,-3416 1195,-3416 1195,-3384 1313,-3384 1313,-3416\"/>\n",
       "<text text-anchor=\"middle\" x=\"1254\" y=\"-3390.5\" font-family=\"monospace\" font-size=\"10.00\"> (128, 128, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459329987984&#45;&gt;1459360465632 -->\n",
       "<g id=\"edge183\" class=\"edge\">\n",
       "<title>1459329987984&#45;&gt;1459360465632</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1244.26,-3383.69C1238.22,-3374.2 1230.41,-3361.92 1223.99,-3351.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1227.06,-3350.15 1218.74,-3343.59 1221.16,-3353.91 1227.06,-3350.15\"/>\n",
       "</g>\n",
       "<!-- 1459360465872 -->\n",
       "<g id=\"node183\" class=\"node\">\n",
       "<title>1459360465872</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1334,-3280 1234,-3280 1234,-3260 1334,-3260 1334,-3280\"/>\n",
       "<text text-anchor=\"middle\" x=\"1284\" y=\"-3266.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360465872&#45;&gt;1459360465920 -->\n",
       "<g id=\"edge184\" class=\"edge\">\n",
       "<title>1459360465872&#45;&gt;1459360465920</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1273.38,-3259.62C1263.04,-3250.5 1247.1,-3236.45 1234.65,-3225.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1237.28,-3223.11 1227.46,-3219.11 1232.65,-3228.35 1237.28,-3223.11\"/>\n",
       "</g>\n",
       "<!-- 1459329870960 -->\n",
       "<g id=\"node184\" class=\"node\">\n",
       "<title>1459329870960</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1334,-3348 1280,-3348 1280,-3316 1334,-3316 1334,-3348\"/>\n",
       "<text text-anchor=\"middle\" x=\"1307\" y=\"-3322.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459329870960&#45;&gt;1459360465872 -->\n",
       "<g id=\"edge185\" class=\"edge\">\n",
       "<title>1459329870960&#45;&gt;1459360465872</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1301.08,-3315.55C1298.22,-3308.08 1294.75,-3299.03 1291.68,-3291.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1295,-3289.91 1288.15,-3281.82 1288.46,-3292.41 1295,-3289.91\"/>\n",
       "</g>\n",
       "<!-- 1459360466112 -->\n",
       "<g id=\"node185\" class=\"node\">\n",
       "<title>1459360466112</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1452,-3280 1352,-3280 1352,-3260 1452,-3260 1452,-3280\"/>\n",
       "<text text-anchor=\"middle\" x=\"1402\" y=\"-3266.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360466112&#45;&gt;1459360465920 -->\n",
       "<g id=\"edge186\" class=\"edge\">\n",
       "<title>1459360466112&#45;&gt;1459360465920</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1372.94,-3259.62C1341.5,-3249.48 1291.17,-3233.25 1256,-3221.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1257.2,-3218.61 1246.61,-3218.87 1255.05,-3225.27 1257.2,-3218.61\"/>\n",
       "</g>\n",
       "<!-- 1459359534032 -->\n",
       "<g id=\"node186\" class=\"node\">\n",
       "<title>1459359534032</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1429,-3348 1375,-3348 1375,-3316 1429,-3316 1429,-3348\"/>\n",
       "<text text-anchor=\"middle\" x=\"1402\" y=\"-3322.5\" font-family=\"monospace\" font-size=\"10.00\"> (128)</text>\n",
       "</g>\n",
       "<!-- 1459359534032&#45;&gt;1459360466112 -->\n",
       "<g id=\"edge187\" class=\"edge\">\n",
       "<title>1459359534032&#45;&gt;1459360466112</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1402,-3315.55C1402,-3308.34 1402,-3299.66 1402,-3291.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1405.5,-3291.92 1402,-3281.92 1398.5,-3291.92 1405.5,-3291.92\"/>\n",
       "</g>\n",
       "<!-- 1459360466256 -->\n",
       "<g id=\"node187\" class=\"node\">\n",
       "<title>1459360466256</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1381,-3150 1281,-3150 1281,-3130 1381,-3130 1381,-3150\"/>\n",
       "<text text-anchor=\"middle\" x=\"1331\" y=\"-3136.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360466256&#45;&gt;1459360466544 -->\n",
       "<g id=\"edge188\" class=\"edge\">\n",
       "<title>1459360466256&#45;&gt;1459360466544</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1321,-3129.62C1311.36,-3120.59 1296.57,-3106.72 1284.9,-3095.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1287.51,-3093.43 1277.82,-3089.15 1282.73,-3098.54 1287.51,-3093.43\"/>\n",
       "</g>\n",
       "<!-- 1459359534432 -->\n",
       "<g id=\"node188\" class=\"node\">\n",
       "<title>1459359534432</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1432,-3224 1314,-3224 1314,-3192 1432,-3192 1432,-3224\"/>\n",
       "<text text-anchor=\"middle\" x=\"1373\" y=\"-3198.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 128, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359534432&#45;&gt;1459360466256 -->\n",
       "<g id=\"edge189\" class=\"edge\">\n",
       "<title>1459359534432&#45;&gt;1459360466256</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1363.26,-3191.69C1357.22,-3182.2 1349.41,-3169.92 1342.99,-3159.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1346.06,-3158.15 1337.74,-3151.59 1340.16,-3161.91 1346.06,-3158.15\"/>\n",
       "</g>\n",
       "<!-- 1459360466640 -->\n",
       "<g id=\"node189\" class=\"node\">\n",
       "<title>1459360466640</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1453,-3088 1353,-3088 1353,-3068 1453,-3068 1453,-3088\"/>\n",
       "<text text-anchor=\"middle\" x=\"1403\" y=\"-3074.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360466640&#45;&gt;1459360466688 -->\n",
       "<g id=\"edge190\" class=\"edge\">\n",
       "<title>1459360466640&#45;&gt;1459360466688</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1391.16,-3067.59C1381.31,-3059.77 1367.07,-3048.46 1355.39,-3039.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1357.9,-3036.72 1347.89,-3033.24 1353.55,-3042.2 1357.9,-3036.72\"/>\n",
       "</g>\n",
       "<!-- 1459359534352 -->\n",
       "<g id=\"node190\" class=\"node\">\n",
       "<title>1459359534352</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1453,-3156 1399,-3156 1399,-3124 1453,-3124 1453,-3156\"/>\n",
       "<text text-anchor=\"middle\" x=\"1426\" y=\"-3130.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359534352&#45;&gt;1459360466640 -->\n",
       "<g id=\"edge191\" class=\"edge\">\n",
       "<title>1459359534352&#45;&gt;1459360466640</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1420.08,-3123.55C1417.22,-3116.08 1413.75,-3107.03 1410.68,-3099.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1414,-3097.91 1407.15,-3089.82 1407.46,-3100.41 1414,-3097.91\"/>\n",
       "</g>\n",
       "<!-- 1459360466736 -->\n",
       "<g id=\"node191\" class=\"node\">\n",
       "<title>1459360466736</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1571,-3088 1471,-3088 1471,-3068 1571,-3068 1571,-3088\"/>\n",
       "<text text-anchor=\"middle\" x=\"1521\" y=\"-3074.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360466736&#45;&gt;1459360466688 -->\n",
       "<g id=\"edge192\" class=\"edge\">\n",
       "<title>1459360466736&#45;&gt;1459360466688</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1488.6,-3067.59C1458.12,-3058.74 1412.24,-3045.43 1378.57,-3035.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1379.68,-3032.33 1369.11,-3032.9 1377.73,-3039.05 1379.68,-3032.33\"/>\n",
       "</g>\n",
       "<!-- 1459359532752 -->\n",
       "<g id=\"node192\" class=\"node\">\n",
       "<title>1459359532752</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1548,-3156 1494,-3156 1494,-3124 1548,-3124 1548,-3156\"/>\n",
       "<text text-anchor=\"middle\" x=\"1521\" y=\"-3130.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359532752&#45;&gt;1459360466736 -->\n",
       "<g id=\"edge193\" class=\"edge\">\n",
       "<title>1459359532752&#45;&gt;1459360466736</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1521,-3123.55C1521,-3116.34 1521,-3107.66 1521,-3099.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1524.5,-3099.92 1521,-3089.92 1517.5,-3099.92 1524.5,-3099.92\"/>\n",
       "</g>\n",
       "<!-- 1459360467024 -->\n",
       "<g id=\"node193\" class=\"node\">\n",
       "<title>1459360467024</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1299,-2902 1199,-2902 1199,-2882 1299,-2882 1299,-2902\"/>\n",
       "<text text-anchor=\"middle\" x=\"1249\" y=\"-2888.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467024&#45;&gt;1459360467216 -->\n",
       "<g id=\"edge195\" class=\"edge\">\n",
       "<title>1459360467024&#45;&gt;1459360467216</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1236.19,-2881.62C1223.55,-2872.38 1203.99,-2858.07 1188.89,-2847.01\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1191.08,-2844.28 1180.94,-2841.2 1186.95,-2849.93 1191.08,-2844.28\"/>\n",
       "</g>\n",
       "<!-- 1459359532032 -->\n",
       "<g id=\"node194\" class=\"node\">\n",
       "<title>1459359532032</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1311,-2976 1193,-2976 1193,-2944 1311,-2944 1311,-2976\"/>\n",
       "<text text-anchor=\"middle\" x=\"1252\" y=\"-2950.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 256, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359532032&#45;&gt;1459360467024 -->\n",
       "<g id=\"edge196\" class=\"edge\">\n",
       "<title>1459359532032&#45;&gt;1459360467024</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1251.3,-2943.69C1250.9,-2934.8 1250.38,-2923.46 1249.94,-2913.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1253.44,-2913.66 1249.49,-2903.83 1246.45,-2913.98 1253.44,-2913.66\"/>\n",
       "</g>\n",
       "<!-- 1459360467264 -->\n",
       "<g id=\"node195\" class=\"node\">\n",
       "<title>1459360467264</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1353,-2840 1253,-2840 1253,-2820 1353,-2820 1353,-2840\"/>\n",
       "<text text-anchor=\"middle\" x=\"1303\" y=\"-2826.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467264&#45;&gt;1459360467312 -->\n",
       "<g id=\"edge197\" class=\"edge\">\n",
       "<title>1459360467264&#45;&gt;1459360467312</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1288,-2819.62C1272.92,-2810.2 1249.43,-2795.52 1231.62,-2784.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1233.51,-2781.44 1223.18,-2779.11 1229.8,-2787.38 1233.51,-2781.44\"/>\n",
       "</g>\n",
       "<!-- 1459359532112 -->\n",
       "<g id=\"node196\" class=\"node\">\n",
       "<title>1459359532112</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1371,-2908 1317,-2908 1317,-2876 1371,-2876 1371,-2908\"/>\n",
       "<text text-anchor=\"middle\" x=\"1344\" y=\"-2882.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359532112&#45;&gt;1459360467264 -->\n",
       "<g id=\"edge198\" class=\"edge\">\n",
       "<title>1459359532112&#45;&gt;1459360467264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1333.44,-2875.55C1328.04,-2867.65 1321.43,-2857.97 1315.75,-2849.66\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1318.81,-2847.94 1310.28,-2841.66 1313.03,-2851.89 1318.81,-2847.94\"/>\n",
       "</g>\n",
       "<!-- 1459360467456 -->\n",
       "<g id=\"node197\" class=\"node\">\n",
       "<title>1459360467456</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1471,-2840 1371,-2840 1371,-2820 1471,-2820 1471,-2840\"/>\n",
       "<text text-anchor=\"middle\" x=\"1421\" y=\"-2826.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467456&#45;&gt;1459360467312 -->\n",
       "<g id=\"edge199\" class=\"edge\">\n",
       "<title>1459360467456&#45;&gt;1459360467312</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1387.56,-2819.62C1350.92,-2809.35 1291.97,-2792.82 1251.46,-2781.47\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1252.59,-2778.15 1242.01,-2778.82 1250.7,-2784.89 1252.59,-2778.15\"/>\n",
       "</g>\n",
       "<!-- 1459359532432 -->\n",
       "<g id=\"node198\" class=\"node\">\n",
       "<title>1459359532432</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1448,-2908 1394,-2908 1394,-2876 1448,-2876 1448,-2908\"/>\n",
       "<text text-anchor=\"middle\" x=\"1421\" y=\"-2882.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359532432&#45;&gt;1459360467456 -->\n",
       "<g id=\"edge200\" class=\"edge\">\n",
       "<title>1459359532432&#45;&gt;1459360467456</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1421,-2875.55C1421,-2868.34 1421,-2859.66 1421,-2851.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1424.5,-2851.92 1421,-2841.92 1417.5,-2851.92 1424.5,-2851.92\"/>\n",
       "</g>\n",
       "<!-- 1459360467552 -->\n",
       "<g id=\"node199\" class=\"node\">\n",
       "<title>1459360467552</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1372,-2710 1272,-2710 1272,-2690 1372,-2690 1372,-2710\"/>\n",
       "<text text-anchor=\"middle\" x=\"1322\" y=\"-2696.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467552&#45;&gt;1459360467744 -->\n",
       "<g id=\"edge201\" class=\"edge\">\n",
       "<title>1459360467552&#45;&gt;1459360467744</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1308.56,-2689.62C1295.18,-2680.29 1274.4,-2665.79 1258.5,-2654.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1260.79,-2652.03 1250.58,-2649.18 1256.78,-2657.77 1260.79,-2652.03\"/>\n",
       "</g>\n",
       "<!-- 1459359532272 -->\n",
       "<g id=\"node200\" class=\"node\">\n",
       "<title>1459359532272</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1423,-2784 1305,-2784 1305,-2752 1423,-2752 1423,-2784\"/>\n",
       "<text text-anchor=\"middle\" x=\"1364\" y=\"-2758.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 256, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359532272&#45;&gt;1459360467552 -->\n",
       "<g id=\"edge202\" class=\"edge\">\n",
       "<title>1459359532272&#45;&gt;1459360467552</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1354.26,-2751.69C1348.22,-2742.2 1340.41,-2729.92 1333.99,-2719.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1337.06,-2718.15 1328.74,-2711.59 1331.16,-2721.91 1337.06,-2718.15\"/>\n",
       "</g>\n",
       "<!-- 1459360467792 -->\n",
       "<g id=\"node201\" class=\"node\">\n",
       "<title>1459360467792</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1422,-2648 1322,-2648 1322,-2628 1422,-2628 1422,-2648\"/>\n",
       "<text text-anchor=\"middle\" x=\"1372\" y=\"-2634.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467792&#45;&gt;1459360467840 -->\n",
       "<g id=\"edge203\" class=\"edge\">\n",
       "<title>1459360467792&#45;&gt;1459360467840</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1361.53,-2627.62C1351.44,-2618.59 1335.95,-2604.72 1323.74,-2593.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1326.09,-2591.19 1316.3,-2587.12 1321.42,-2596.4 1326.09,-2591.19\"/>\n",
       "</g>\n",
       "<!-- 1459359531632 -->\n",
       "<g id=\"node202\" class=\"node\">\n",
       "<title>1459359531632</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1444,-2716 1390,-2716 1390,-2684 1444,-2684 1444,-2716\"/>\n",
       "<text text-anchor=\"middle\" x=\"1417\" y=\"-2690.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359531632&#45;&gt;1459360467792 -->\n",
       "<g id=\"edge204\" class=\"edge\">\n",
       "<title>1459359531632&#45;&gt;1459360467792</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1405.41,-2683.55C1399.42,-2675.56 1392.07,-2665.76 1385.79,-2657.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1388.76,-2655.52 1379.96,-2649.62 1383.16,-2659.72 1388.76,-2655.52\"/>\n",
       "</g>\n",
       "<!-- 1459360467936 -->\n",
       "<g id=\"node203\" class=\"node\">\n",
       "<title>1459360467936</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1540,-2648 1440,-2648 1440,-2628 1540,-2628 1540,-2648\"/>\n",
       "<text text-anchor=\"middle\" x=\"1490\" y=\"-2634.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467936&#45;&gt;1459360467840 -->\n",
       "<g id=\"edge205\" class=\"edge\">\n",
       "<title>1459360467936&#45;&gt;1459360467840</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1461.09,-2627.62C1429.82,-2617.48 1379.76,-2601.25 1344.79,-2589.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1346.04,-2586.63 1335.45,-2586.87 1343.88,-2593.29 1346.04,-2586.63\"/>\n",
       "</g>\n",
       "<!-- 1459359532992 -->\n",
       "<g id=\"node204\" class=\"node\">\n",
       "<title>1459359532992</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1517,-2716 1463,-2716 1463,-2684 1517,-2684 1517,-2716\"/>\n",
       "<text text-anchor=\"middle\" x=\"1490\" y=\"-2690.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359532992&#45;&gt;1459360467936 -->\n",
       "<g id=\"edge206\" class=\"edge\">\n",
       "<title>1459359532992&#45;&gt;1459360467936</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1490,-2683.55C1490,-2676.34 1490,-2667.66 1490,-2659.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1493.5,-2659.92 1490,-2649.92 1486.5,-2659.92 1493.5,-2659.92\"/>\n",
       "</g>\n",
       "<!-- 1459360468128 -->\n",
       "<g id=\"node205\" class=\"node\">\n",
       "<title>1459360468128</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1470,-2518 1370,-2518 1370,-2498 1470,-2498 1470,-2518\"/>\n",
       "<text text-anchor=\"middle\" x=\"1420\" y=\"-2504.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360468128&#45;&gt;1459360468272 -->\n",
       "<g id=\"edge207\" class=\"edge\">\n",
       "<title>1459360468128&#45;&gt;1459360468272</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1410,-2497.62C1400.36,-2488.59 1385.57,-2474.72 1373.9,-2463.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1376.51,-2461.43 1366.82,-2457.15 1371.73,-2466.54 1376.51,-2461.43\"/>\n",
       "</g>\n",
       "<!-- 1459211596320 -->\n",
       "<g id=\"node206\" class=\"node\">\n",
       "<title>1459211596320</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1521,-2592 1403,-2592 1403,-2560 1521,-2560 1521,-2592\"/>\n",
       "<text text-anchor=\"middle\" x=\"1462\" y=\"-2566.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 256, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459211596320&#45;&gt;1459360468128 -->\n",
       "<g id=\"edge208\" class=\"edge\">\n",
       "<title>1459211596320&#45;&gt;1459360468128</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1452.26,-2559.69C1446.22,-2550.2 1438.41,-2537.92 1431.99,-2527.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1435.06,-2526.15 1426.74,-2519.59 1429.16,-2529.91 1435.06,-2526.15\"/>\n",
       "</g>\n",
       "<!-- 1459360468320 -->\n",
       "<g id=\"node207\" class=\"node\">\n",
       "<title>1459360468320</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1542,-2456 1442,-2456 1442,-2436 1542,-2436 1542,-2456\"/>\n",
       "<text text-anchor=\"middle\" x=\"1492\" y=\"-2442.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360468320&#45;&gt;1459360468512 -->\n",
       "<g id=\"edge209\" class=\"edge\">\n",
       "<title>1459360468320&#45;&gt;1459360468512</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1480.16,-2435.59C1470.31,-2427.77 1456.07,-2416.46 1444.39,-2407.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1446.9,-2404.72 1436.89,-2401.24 1442.55,-2410.2 1446.9,-2404.72\"/>\n",
       "</g>\n",
       "<!-- 1459359490272 -->\n",
       "<g id=\"node208\" class=\"node\">\n",
       "<title>1459359490272</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1542,-2524 1488,-2524 1488,-2492 1542,-2492 1542,-2524\"/>\n",
       "<text text-anchor=\"middle\" x=\"1515\" y=\"-2498.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359490272&#45;&gt;1459360468320 -->\n",
       "<g id=\"edge210\" class=\"edge\">\n",
       "<title>1459359490272&#45;&gt;1459360468320</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1509.08,-2491.55C1506.22,-2484.08 1502.75,-2475.03 1499.68,-2467.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1503,-2465.91 1496.15,-2457.82 1496.46,-2468.41 1503,-2465.91\"/>\n",
       "</g>\n",
       "<!-- 1459360468464 -->\n",
       "<g id=\"node209\" class=\"node\">\n",
       "<title>1459360468464</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1660,-2456 1560,-2456 1560,-2436 1660,-2436 1660,-2456\"/>\n",
       "<text text-anchor=\"middle\" x=\"1610\" y=\"-2442.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360468464&#45;&gt;1459360468512 -->\n",
       "<g id=\"edge211\" class=\"edge\">\n",
       "<title>1459360468464&#45;&gt;1459360468512</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1577.6,-2435.59C1547.12,-2426.74 1501.24,-2413.43 1467.57,-2403.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1468.68,-2400.33 1458.11,-2400.9 1466.73,-2407.05 1468.68,-2400.33\"/>\n",
       "</g>\n",
       "<!-- 1459359491872 -->\n",
       "<g id=\"node210\" class=\"node\">\n",
       "<title>1459359491872</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1637,-2524 1583,-2524 1583,-2492 1637,-2492 1637,-2524\"/>\n",
       "<text text-anchor=\"middle\" x=\"1610\" y=\"-2498.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359491872&#45;&gt;1459360468464 -->\n",
       "<g id=\"edge212\" class=\"edge\">\n",
       "<title>1459359491872&#45;&gt;1459360468464</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1610,-2491.55C1610,-2484.34 1610,-2475.66 1610,-2467.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1613.5,-2467.92 1610,-2457.92 1606.5,-2467.92 1613.5,-2467.92\"/>\n",
       "</g>\n",
       "<!-- 1459360468560 -->\n",
       "<g id=\"node211\" class=\"node\">\n",
       "<title>1459360468560</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1049,-2778 889,-2778 889,-2758 1049,-2758 1049,-2778\"/>\n",
       "<text text-anchor=\"middle\" x=\"969\" y=\"-2764.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360468560&#45;&gt;1459360468656 -->\n",
       "<g id=\"edge213\" class=\"edge\">\n",
       "<title>1459360468560&#45;&gt;1459360468656</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1001.19,-2757.52C1048.18,-2741.47 1130,-2704.17 1130,-2639 1130,-2639 1130,-2639 1130,-2445 1130,-2405.58 1159.59,-2367.69 1179.73,-2346.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1182.07,-2349.08 1186.61,-2339.51 1177.09,-2344.16 1182.07,-2349.08\"/>\n",
       "</g>\n",
       "<!-- 1459360467648&#45;&gt;1459360468560 -->\n",
       "<g id=\"edge214\" class=\"edge\">\n",
       "<title>1459360467648&#45;&gt;1459360468560</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1003.59,-2819.62C997.72,-2811.03 988.86,-2798.07 981.58,-2787.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"984.61,-2785.64 976.08,-2779.36 978.83,-2789.59 984.61,-2785.64\"/>\n",
       "</g>\n",
       "<!-- 1459360467120 -->\n",
       "<g id=\"node213\" class=\"node\">\n",
       "<title>1459360467120</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"951,-2902 851,-2902 851,-2882 951,-2882 951,-2902\"/>\n",
       "<text text-anchor=\"middle\" x=\"901\" y=\"-2888.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467120&#45;&gt;1459360467648 -->\n",
       "<g id=\"edge216\" class=\"edge\">\n",
       "<title>1459360467120&#45;&gt;1459360467648</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M918.03,-2881.62C935.47,-2872.03 962.83,-2856.97 983.18,-2845.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"984.69,-2848.93 991.76,-2841.04 981.31,-2842.8 984.69,-2848.93\"/>\n",
       "</g>\n",
       "<!-- 1459359493312 -->\n",
       "<g id=\"node214\" class=\"node\">\n",
       "<title>1459359493312</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"960,-2976 842,-2976 842,-2944 960,-2944 960,-2976\"/>\n",
       "<text text-anchor=\"middle\" x=\"901\" y=\"-2950.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 256, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359493312&#45;&gt;1459360467120 -->\n",
       "<g id=\"edge217\" class=\"edge\">\n",
       "<title>1459359493312&#45;&gt;1459360467120</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M901,-2943.69C901,-2934.8 901,-2923.46 901,-2913.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"904.5,-2913.83 901,-2903.83 897.5,-2913.83 904.5,-2913.83\"/>\n",
       "</g>\n",
       "<!-- 1459360467072 -->\n",
       "<g id=\"node215\" class=\"node\">\n",
       "<title>1459360467072</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1069,-2902 969,-2902 969,-2882 1069,-2882 1069,-2902\"/>\n",
       "<text text-anchor=\"middle\" x=\"1019\" y=\"-2888.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360467072&#45;&gt;1459360467648 -->\n",
       "<g id=\"edge218\" class=\"edge\">\n",
       "<title>1459360467072&#45;&gt;1459360467648</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1017.59,-2881.62C1016.38,-2873.56 1014.6,-2861.65 1013.06,-2851.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1016.54,-2850.98 1011.59,-2841.61 1009.61,-2852.02 1016.54,-2850.98\"/>\n",
       "</g>\n",
       "<!-- 1459359493392 -->\n",
       "<g id=\"node216\" class=\"node\">\n",
       "<title>1459359493392</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1046,-2976 992,-2976 992,-2944 1046,-2944 1046,-2976\"/>\n",
       "<text text-anchor=\"middle\" x=\"1019\" y=\"-2950.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359493392&#45;&gt;1459360467072 -->\n",
       "<g id=\"edge219\" class=\"edge\">\n",
       "<title>1459359493392&#45;&gt;1459360467072</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1019,-2943.69C1019,-2934.8 1019,-2923.46 1019,-2913.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1022.5,-2913.83 1019,-2903.83 1015.5,-2913.83 1022.5,-2913.83\"/>\n",
       "</g>\n",
       "<!-- 1459360468176 -->\n",
       "<g id=\"node217\" class=\"node\">\n",
       "<title>1459360468176</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"788,-2840 688,-2840 688,-2820 788,-2820 788,-2840\"/>\n",
       "<text text-anchor=\"middle\" x=\"738\" y=\"-2826.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360468176&#45;&gt;1459360468560 -->\n",
       "<g id=\"edge220\" class=\"edge\">\n",
       "<title>1459360468176&#45;&gt;1459360468560</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M774.35,-2819.56C814.09,-2809.24 877.92,-2792.66 921.57,-2781.32\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"922.22,-2784.77 931.02,-2778.87 920.46,-2777.99 922.22,-2784.77\"/>\n",
       "</g>\n",
       "<!-- 1459359493472 -->\n",
       "<g id=\"node218\" class=\"node\">\n",
       "<title>1459359493472</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"761,-2908 707,-2908 707,-2876 761,-2876 761,-2908\"/>\n",
       "<text text-anchor=\"middle\" x=\"734\" y=\"-2882.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359493472&#45;&gt;1459360468176 -->\n",
       "<g id=\"edge221\" class=\"edge\">\n",
       "<title>1459359493472&#45;&gt;1459360468176</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M735.03,-2875.55C735.51,-2868.34 736.09,-2859.66 736.61,-2851.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"740.1,-2852.13 737.27,-2841.92 733.11,-2851.66 740.1,-2852.13\"/>\n",
       "</g>\n",
       "<!-- 1459360468224 -->\n",
       "<g id=\"node219\" class=\"node\">\n",
       "<title>1459360468224</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"918,-2840 818,-2840 818,-2820 918,-2820 918,-2840\"/>\n",
       "<text text-anchor=\"middle\" x=\"868\" y=\"-2826.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360468224&#45;&gt;1459360468560 -->\n",
       "<g id=\"edge222\" class=\"edge\">\n",
       "<title>1459360468224&#45;&gt;1459360468560</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M883.78,-2819.62C899.79,-2810.11 924.82,-2795.24 943.62,-2784.08\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"945.22,-2787.2 952.03,-2779.08 941.64,-2781.18 945.22,-2787.2\"/>\n",
       "</g>\n",
       "<!-- 1459359493552 -->\n",
       "<g id=\"node220\" class=\"node\">\n",
       "<title>1459359493552</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"833,-2908 779,-2908 779,-2876 833,-2876 833,-2908\"/>\n",
       "<text text-anchor=\"middle\" x=\"806\" y=\"-2882.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359493552&#45;&gt;1459360468224 -->\n",
       "<g id=\"edge223\" class=\"edge\">\n",
       "<title>1459359493552&#45;&gt;1459360468224</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M821.97,-2875.55C830.58,-2867.22 841.23,-2856.91 850.12,-2848.3\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"852.44,-2850.93 857.19,-2841.46 847.57,-2845.9 852.44,-2850.93\"/>\n",
       "</g>\n",
       "<!-- 1459360468752 -->\n",
       "<g id=\"node221\" class=\"node\">\n",
       "<title>1459360468752</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1368,-2270 1268,-2270 1268,-2250 1368,-2250 1368,-2270\"/>\n",
       "<text text-anchor=\"middle\" x=\"1318\" y=\"-2256.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360468752&#45;&gt;1459326223456 -->\n",
       "<g id=\"edge224\" class=\"edge\">\n",
       "<title>1459360468752&#45;&gt;1459326223456</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1314.72,-2249.62C1311.84,-2241.39 1307.54,-2229.13 1303.91,-2218.74\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1307.3,-2217.82 1300.69,-2209.54 1300.69,-2220.14 1307.3,-2217.82\"/>\n",
       "</g>\n",
       "<!-- 1459359493952 -->\n",
       "<g id=\"node222\" class=\"node\">\n",
       "<title>1459359493952</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1378,-2344 1260,-2344 1260,-2312 1378,-2312 1378,-2344\"/>\n",
       "<text text-anchor=\"middle\" x=\"1319\" y=\"-2318.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 512, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359493952&#45;&gt;1459360468752 -->\n",
       "<g id=\"edge225\" class=\"edge\">\n",
       "<title>1459359493952&#45;&gt;1459360468752</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1318.77,-2311.69C1318.63,-2302.8 1318.46,-2291.46 1318.31,-2281.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1321.82,-2281.78 1318.16,-2271.83 1314.82,-2281.88 1321.82,-2281.78\"/>\n",
       "</g>\n",
       "<!-- 1459326222736 -->\n",
       "<g id=\"node223\" class=\"node\">\n",
       "<title>1459326222736</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1483,-2208 1383,-2208 1383,-2188 1483,-2188 1483,-2208\"/>\n",
       "<text text-anchor=\"middle\" x=\"1433\" y=\"-2194.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326222736&#45;&gt;1459326222592 -->\n",
       "<g id=\"edge226\" class=\"edge\">\n",
       "<title>1459326222736&#45;&gt;1459326222592</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1423.31,-2187.62C1414.07,-2178.68 1399.92,-2164.99 1388.67,-2154.1\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1391.12,-2151.6 1381.5,-2147.17 1386.26,-2156.63 1391.12,-2151.6\"/>\n",
       "</g>\n",
       "<!-- 1459359494032 -->\n",
       "<g id=\"node224\" class=\"node\">\n",
       "<title>1459359494032</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1460,-2276 1406,-2276 1406,-2244 1460,-2244 1460,-2276\"/>\n",
       "<text text-anchor=\"middle\" x=\"1433\" y=\"-2250.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359494032&#45;&gt;1459326222736 -->\n",
       "<g id=\"edge227\" class=\"edge\">\n",
       "<title>1459359494032&#45;&gt;1459326222736</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1433,-2243.55C1433,-2236.34 1433,-2227.66 1433,-2219.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1436.5,-2219.92 1433,-2209.92 1429.5,-2219.92 1436.5,-2219.92\"/>\n",
       "</g>\n",
       "<!-- 1459326222688 -->\n",
       "<g id=\"node225\" class=\"node\">\n",
       "<title>1459326222688</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1601,-2208 1501,-2208 1501,-2188 1601,-2188 1601,-2208\"/>\n",
       "<text text-anchor=\"middle\" x=\"1551\" y=\"-2194.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326222688&#45;&gt;1459326222592 -->\n",
       "<g id=\"edge228\" class=\"edge\">\n",
       "<title>1459326222688&#45;&gt;1459326222592</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1522.88,-2187.62C1492.45,-2177.48 1443.74,-2161.25 1409.71,-2149.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1411.25,-2146.73 1400.66,-2146.89 1409.04,-2153.37 1411.25,-2146.73\"/>\n",
       "</g>\n",
       "<!-- 1459359493792 -->\n",
       "<g id=\"node226\" class=\"node\">\n",
       "<title>1459359493792</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1578,-2276 1524,-2276 1524,-2244 1578,-2244 1578,-2276\"/>\n",
       "<text text-anchor=\"middle\" x=\"1551\" y=\"-2250.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359493792&#45;&gt;1459326222688 -->\n",
       "<g id=\"edge229\" class=\"edge\">\n",
       "<title>1459359493792&#45;&gt;1459326222688</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1551,-2243.55C1551,-2236.34 1551,-2227.66 1551,-2219.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1554.5,-2219.92 1551,-2209.92 1547.5,-2219.92 1554.5,-2219.92\"/>\n",
       "</g>\n",
       "<!-- 1459326222928 -->\n",
       "<g id=\"node227\" class=\"node\">\n",
       "<title>1459326222928</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1536,-2078 1436,-2078 1436,-2058 1536,-2058 1536,-2078\"/>\n",
       "<text text-anchor=\"middle\" x=\"1486\" y=\"-2064.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326222928&#45;&gt;1459326223072 -->\n",
       "<g id=\"edge230\" class=\"edge\">\n",
       "<title>1459326222928&#45;&gt;1459326223072</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1476,-2057.62C1466.36,-2048.59 1451.57,-2034.72 1439.9,-2023.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1442.51,-2021.43 1432.82,-2017.15 1437.73,-2026.54 1442.51,-2021.43\"/>\n",
       "</g>\n",
       "<!-- 1459359492032 -->\n",
       "<g id=\"node228\" class=\"node\">\n",
       "<title>1459359492032</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1587,-2152 1469,-2152 1469,-2120 1587,-2120 1587,-2152\"/>\n",
       "<text text-anchor=\"middle\" x=\"1528\" y=\"-2126.5\" font-family=\"monospace\" font-size=\"10.00\"> (256, 256, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359492032&#45;&gt;1459326222928 -->\n",
       "<g id=\"edge231\" class=\"edge\">\n",
       "<title>1459359492032&#45;&gt;1459326222928</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1518.26,-2119.69C1512.22,-2110.2 1504.41,-2097.92 1497.99,-2087.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1501.06,-2086.15 1492.74,-2079.59 1495.16,-2089.91 1501.06,-2086.15\"/>\n",
       "</g>\n",
       "<!-- 1459326223168 -->\n",
       "<g id=\"node229\" class=\"node\">\n",
       "<title>1459326223168</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1608,-2016 1508,-2016 1508,-1996 1608,-1996 1608,-2016\"/>\n",
       "<text text-anchor=\"middle\" x=\"1558\" y=\"-2002.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326223168&#45;&gt;1459326223264 -->\n",
       "<g id=\"edge232\" class=\"edge\">\n",
       "<title>1459326223168&#45;&gt;1459326223264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1547.38,-1995.62C1537.04,-1986.5 1521.1,-1972.45 1508.65,-1961.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1511.28,-1959.11 1501.46,-1955.11 1506.65,-1964.35 1511.28,-1959.11\"/>\n",
       "</g>\n",
       "<!-- 1459359492112 -->\n",
       "<g id=\"node230\" class=\"node\">\n",
       "<title>1459359492112</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1608,-2084 1554,-2084 1554,-2052 1608,-2052 1608,-2084\"/>\n",
       "<text text-anchor=\"middle\" x=\"1581\" y=\"-2058.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359492112&#45;&gt;1459326223168 -->\n",
       "<g id=\"edge233\" class=\"edge\">\n",
       "<title>1459359492112&#45;&gt;1459326223168</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1575.08,-2051.55C1572.22,-2044.08 1568.75,-2035.03 1565.68,-2027.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1569,-2025.91 1562.15,-2017.82 1562.46,-2028.41 1569,-2025.91\"/>\n",
       "</g>\n",
       "<!-- 1459326223696 -->\n",
       "<g id=\"node231\" class=\"node\">\n",
       "<title>1459326223696</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1726,-2016 1626,-2016 1626,-1996 1726,-1996 1726,-2016\"/>\n",
       "<text text-anchor=\"middle\" x=\"1676\" y=\"-2002.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326223696&#45;&gt;1459326223264 -->\n",
       "<g id=\"edge234\" class=\"edge\">\n",
       "<title>1459326223696&#45;&gt;1459326223264</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1646.94,-1995.62C1615.5,-1985.48 1565.17,-1969.25 1530,-1957.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1531.2,-1954.61 1520.61,-1954.87 1529.05,-1961.27 1531.2,-1954.61\"/>\n",
       "</g>\n",
       "<!-- 1459359492192 -->\n",
       "<g id=\"node232\" class=\"node\">\n",
       "<title>1459359492192</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1703,-2084 1649,-2084 1649,-2052 1703,-2052 1703,-2084\"/>\n",
       "<text text-anchor=\"middle\" x=\"1676\" y=\"-2058.5\" font-family=\"monospace\" font-size=\"10.00\"> (256)</text>\n",
       "</g>\n",
       "<!-- 1459359492192&#45;&gt;1459326223696 -->\n",
       "<g id=\"edge235\" class=\"edge\">\n",
       "<title>1459359492192&#45;&gt;1459326223696</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1676,-2051.55C1676,-2044.34 1676,-2035.66 1676,-2027.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1679.5,-2027.92 1676,-2017.92 1672.5,-2027.92 1679.5,-2027.92\"/>\n",
       "</g>\n",
       "<!-- 1459326224224 -->\n",
       "<g id=\"node233\" class=\"node\">\n",
       "<title>1459326224224</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1655,-1886 1555,-1886 1555,-1866 1655,-1866 1655,-1886\"/>\n",
       "<text text-anchor=\"middle\" x=\"1605\" y=\"-1872.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326224224&#45;&gt;1459326224368 -->\n",
       "<g id=\"edge236\" class=\"edge\">\n",
       "<title>1459326224224&#45;&gt;1459326224368</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1595,-1865.62C1585.36,-1856.59 1570.57,-1842.72 1558.9,-1831.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1561.51,-1829.43 1551.82,-1825.15 1556.73,-1834.54 1561.51,-1829.43\"/>\n",
       "</g>\n",
       "<!-- 1459359490832 -->\n",
       "<g id=\"node234\" class=\"node\">\n",
       "<title>1459359490832</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1706,-1960 1588,-1960 1588,-1928 1706,-1928 1706,-1960\"/>\n",
       "<text text-anchor=\"middle\" x=\"1647\" y=\"-1934.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 256, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359490832&#45;&gt;1459326224224 -->\n",
       "<g id=\"edge237\" class=\"edge\">\n",
       "<title>1459359490832&#45;&gt;1459326224224</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1637.26,-1927.69C1631.22,-1918.2 1623.41,-1905.92 1616.99,-1895.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1620.06,-1894.15 1611.74,-1887.59 1614.16,-1897.91 1620.06,-1894.15\"/>\n",
       "</g>\n",
       "<!-- 1459326223600 -->\n",
       "<g id=\"node235\" class=\"node\">\n",
       "<title>1459326223600</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1727,-1824 1627,-1824 1627,-1804 1727,-1804 1727,-1824\"/>\n",
       "<text text-anchor=\"middle\" x=\"1677\" y=\"-1810.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326223600&#45;&gt;1459326223504 -->\n",
       "<g id=\"edge238\" class=\"edge\">\n",
       "<title>1459326223600&#45;&gt;1459326223504</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1665.16,-1803.59C1655.31,-1795.77 1641.07,-1784.46 1629.39,-1775.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1631.9,-1772.72 1621.89,-1769.24 1627.55,-1778.2 1631.9,-1772.72\"/>\n",
       "</g>\n",
       "<!-- 1459359490992 -->\n",
       "<g id=\"node236\" class=\"node\">\n",
       "<title>1459359490992</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1727,-1892 1673,-1892 1673,-1860 1727,-1860 1727,-1892\"/>\n",
       "<text text-anchor=\"middle\" x=\"1700\" y=\"-1866.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359490992&#45;&gt;1459326223600 -->\n",
       "<g id=\"edge239\" class=\"edge\">\n",
       "<title>1459359490992&#45;&gt;1459326223600</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1694.08,-1859.55C1691.22,-1852.08 1687.75,-1843.03 1684.68,-1835.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1688,-1833.91 1681.15,-1825.82 1681.46,-1836.41 1688,-1833.91\"/>\n",
       "</g>\n",
       "<!-- 1459326223408 -->\n",
       "<g id=\"node237\" class=\"node\">\n",
       "<title>1459326223408</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1845,-1824 1745,-1824 1745,-1804 1845,-1804 1845,-1824\"/>\n",
       "<text text-anchor=\"middle\" x=\"1795\" y=\"-1810.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326223408&#45;&gt;1459326223504 -->\n",
       "<g id=\"edge240\" class=\"edge\">\n",
       "<title>1459326223408&#45;&gt;1459326223504</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1762.6,-1803.59C1732.12,-1794.74 1686.24,-1781.43 1652.57,-1771.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1653.68,-1768.33 1643.11,-1768.9 1651.73,-1775.05 1653.68,-1768.33\"/>\n",
       "</g>\n",
       "<!-- 1459359491072 -->\n",
       "<g id=\"node238\" class=\"node\">\n",
       "<title>1459359491072</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1822,-1892 1768,-1892 1768,-1860 1822,-1860 1822,-1892\"/>\n",
       "<text text-anchor=\"middle\" x=\"1795\" y=\"-1866.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359491072&#45;&gt;1459326223408 -->\n",
       "<g id=\"edge241\" class=\"edge\">\n",
       "<title>1459359491072&#45;&gt;1459326223408</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1795,-1859.55C1795,-1852.34 1795,-1843.66 1795,-1835.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1798.5,-1835.92 1795,-1825.92 1791.5,-1835.92 1798.5,-1835.92\"/>\n",
       "</g>\n",
       "<!-- 1459326225952 -->\n",
       "<g id=\"node239\" class=\"node\">\n",
       "<title>1459326225952</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1573,-1638 1473,-1638 1473,-1618 1573,-1618 1573,-1638\"/>\n",
       "<text text-anchor=\"middle\" x=\"1523\" y=\"-1624.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459326225952&#45;&gt;1459360001040 -->\n",
       "<g id=\"edge243\" class=\"edge\">\n",
       "<title>1459326225952&#45;&gt;1459360001040</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1510.19,-1617.62C1497.55,-1608.38 1477.99,-1594.07 1462.89,-1583.01\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1465.08,-1580.28 1454.94,-1577.2 1460.95,-1585.93 1465.08,-1580.28\"/>\n",
       "</g>\n",
       "<!-- 1459359490192 -->\n",
       "<g id=\"node240\" class=\"node\">\n",
       "<title>1459359490192</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1585,-1712 1467,-1712 1467,-1680 1585,-1680 1585,-1712\"/>\n",
       "<text text-anchor=\"middle\" x=\"1526\" y=\"-1686.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 512, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359490192&#45;&gt;1459326225952 -->\n",
       "<g id=\"edge244\" class=\"edge\">\n",
       "<title>1459359490192&#45;&gt;1459326225952</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1525.3,-1679.69C1524.9,-1670.8 1524.38,-1659.46 1523.94,-1649.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1527.44,-1649.66 1523.49,-1639.83 1520.45,-1649.98 1527.44,-1649.66\"/>\n",
       "</g>\n",
       "<!-- 1459325844400 -->\n",
       "<g id=\"node241\" class=\"node\">\n",
       "<title>1459325844400</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1627,-1576 1527,-1576 1527,-1556 1627,-1556 1627,-1576\"/>\n",
       "<text text-anchor=\"middle\" x=\"1577\" y=\"-1562.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459325844400&#45;&gt;1459325738960 -->\n",
       "<g id=\"edge245\" class=\"edge\">\n",
       "<title>1459325844400&#45;&gt;1459325738960</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1562.16,-1555.62C1547.24,-1546.2 1523.99,-1531.52 1506.36,-1520.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1508.34,-1517.5 1498.02,-1515.12 1504.61,-1523.42 1508.34,-1517.5\"/>\n",
       "</g>\n",
       "<!-- 1459359490352 -->\n",
       "<g id=\"node242\" class=\"node\">\n",
       "<title>1459359490352</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1645,-1644 1591,-1644 1591,-1612 1645,-1612 1645,-1644\"/>\n",
       "<text text-anchor=\"middle\" x=\"1618\" y=\"-1618.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359490352&#45;&gt;1459325844400 -->\n",
       "<g id=\"edge246\" class=\"edge\">\n",
       "<title>1459359490352&#45;&gt;1459325844400</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1607.44,-1611.55C1602.04,-1603.65 1595.43,-1593.97 1589.75,-1585.66\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1592.81,-1583.94 1584.28,-1577.66 1587.03,-1587.89 1592.81,-1583.94\"/>\n",
       "</g>\n",
       "<!-- 1459325845216 -->\n",
       "<g id=\"node243\" class=\"node\">\n",
       "<title>1459325845216</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1745,-1576 1645,-1576 1645,-1556 1745,-1556 1745,-1576\"/>\n",
       "<text text-anchor=\"middle\" x=\"1695\" y=\"-1562.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459325845216&#45;&gt;1459325738960 -->\n",
       "<g id=\"edge247\" class=\"edge\">\n",
       "<title>1459325845216&#45;&gt;1459325738960</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1661.72,-1555.62C1625.25,-1545.35 1566.58,-1528.82 1526.25,-1517.47\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1527.43,-1514.16 1516.86,-1514.82 1525.53,-1520.9 1527.43,-1514.16\"/>\n",
       "</g>\n",
       "<!-- 1459358174960 -->\n",
       "<g id=\"node244\" class=\"node\">\n",
       "<title>1459358174960</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1722,-1644 1668,-1644 1668,-1612 1722,-1612 1722,-1644\"/>\n",
       "<text text-anchor=\"middle\" x=\"1695\" y=\"-1618.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459358174960&#45;&gt;1459325845216 -->\n",
       "<g id=\"edge248\" class=\"edge\">\n",
       "<title>1459358174960&#45;&gt;1459325845216</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1695,-1611.55C1695,-1604.34 1695,-1595.66 1695,-1587.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1698.5,-1587.92 1695,-1577.92 1691.5,-1587.92 1698.5,-1587.92\"/>\n",
       "</g>\n",
       "<!-- 1459360001136 -->\n",
       "<g id=\"node245\" class=\"node\">\n",
       "<title>1459360001136</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1647,-1446 1547,-1446 1547,-1426 1647,-1426 1647,-1446\"/>\n",
       "<text text-anchor=\"middle\" x=\"1597\" y=\"-1432.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001136&#45;&gt;1459360001376 -->\n",
       "<g id=\"edge249\" class=\"edge\">\n",
       "<title>1459360001136&#45;&gt;1459360001376</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1583.56,-1425.62C1570.18,-1416.29 1549.4,-1401.79 1533.5,-1390.7\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1535.79,-1388.03 1525.58,-1385.18 1531.78,-1393.77 1535.79,-1388.03\"/>\n",
       "</g>\n",
       "<!-- 1459359485040 -->\n",
       "<g id=\"node246\" class=\"node\">\n",
       "<title>1459359485040</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1698,-1520 1580,-1520 1580,-1488 1698,-1488 1698,-1520\"/>\n",
       "<text text-anchor=\"middle\" x=\"1639\" y=\"-1494.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 512, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359485040&#45;&gt;1459360001136 -->\n",
       "<g id=\"edge250\" class=\"edge\">\n",
       "<title>1459359485040&#45;&gt;1459360001136</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1629.26,-1487.69C1623.22,-1478.2 1615.41,-1465.92 1608.99,-1455.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1612.06,-1454.15 1603.74,-1447.59 1606.16,-1457.91 1612.06,-1454.15\"/>\n",
       "</g>\n",
       "<!-- 1459360001232 -->\n",
       "<g id=\"node247\" class=\"node\">\n",
       "<title>1459360001232</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1697,-1384 1597,-1384 1597,-1364 1697,-1364 1697,-1384\"/>\n",
       "<text text-anchor=\"middle\" x=\"1647\" y=\"-1370.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001232&#45;&gt;1459360001472 -->\n",
       "<g id=\"edge251\" class=\"edge\">\n",
       "<title>1459360001232&#45;&gt;1459360001472</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1636.53,-1363.62C1626.44,-1354.59 1610.95,-1340.72 1598.74,-1329.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1601.09,-1327.19 1591.3,-1323.12 1596.42,-1332.4 1601.09,-1327.19\"/>\n",
       "</g>\n",
       "<!-- 1459359485120 -->\n",
       "<g id=\"node248\" class=\"node\">\n",
       "<title>1459359485120</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1719,-1452 1665,-1452 1665,-1420 1719,-1420 1719,-1452\"/>\n",
       "<text text-anchor=\"middle\" x=\"1692\" y=\"-1426.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359485120&#45;&gt;1459360001232 -->\n",
       "<g id=\"edge252\" class=\"edge\">\n",
       "<title>1459359485120&#45;&gt;1459360001232</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1680.41,-1419.55C1674.42,-1411.56 1667.07,-1401.76 1660.79,-1393.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1663.76,-1391.52 1654.96,-1385.62 1658.16,-1395.72 1663.76,-1391.52\"/>\n",
       "</g>\n",
       "<!-- 1459360001568 -->\n",
       "<g id=\"node249\" class=\"node\">\n",
       "<title>1459360001568</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1815,-1384 1715,-1384 1715,-1364 1815,-1364 1815,-1384\"/>\n",
       "<text text-anchor=\"middle\" x=\"1765\" y=\"-1370.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001568&#45;&gt;1459360001472 -->\n",
       "<g id=\"edge253\" class=\"edge\">\n",
       "<title>1459360001568&#45;&gt;1459360001472</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1736.09,-1363.62C1704.82,-1353.48 1654.76,-1337.25 1619.79,-1325.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1621.04,-1322.63 1610.45,-1322.87 1618.88,-1329.29 1621.04,-1322.63\"/>\n",
       "</g>\n",
       "<!-- 1459359484800 -->\n",
       "<g id=\"node250\" class=\"node\">\n",
       "<title>1459359484800</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1792,-1452 1738,-1452 1738,-1420 1792,-1420 1792,-1452\"/>\n",
       "<text text-anchor=\"middle\" x=\"1765\" y=\"-1426.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359484800&#45;&gt;1459360001568 -->\n",
       "<g id=\"edge254\" class=\"edge\">\n",
       "<title>1459359484800&#45;&gt;1459360001568</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1765,-1419.55C1765,-1412.34 1765,-1403.66 1765,-1395.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1768.5,-1395.92 1765,-1385.92 1761.5,-1395.92 1768.5,-1395.92\"/>\n",
       "</g>\n",
       "<!-- 1459360001664 -->\n",
       "<g id=\"node251\" class=\"node\">\n",
       "<title>1459360001664</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1745,-1254 1645,-1254 1645,-1234 1745,-1234 1745,-1254\"/>\n",
       "<text text-anchor=\"middle\" x=\"1695\" y=\"-1240.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001664&#45;&gt;1459360001856 -->\n",
       "<g id=\"edge255\" class=\"edge\">\n",
       "<title>1459360001664&#45;&gt;1459360001856</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1685.62,-1233.62C1676.68,-1224.68 1662.99,-1210.99 1652.1,-1200.1\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1654.73,-1197.78 1645.18,-1193.18 1649.78,-1202.73 1654.73,-1197.78\"/>\n",
       "</g>\n",
       "<!-- 1459359483680 -->\n",
       "<g id=\"node252\" class=\"node\">\n",
       "<title>1459359483680</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1802,-1328 1678,-1328 1678,-1296 1802,-1296 1802,-1328\"/>\n",
       "<text text-anchor=\"middle\" x=\"1740\" y=\"-1302.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024, 512, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359483680&#45;&gt;1459360001664 -->\n",
       "<g id=\"edge256\" class=\"edge\">\n",
       "<title>1459359483680&#45;&gt;1459360001664</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1729.56,-1295.69C1723.02,-1286.1 1714.55,-1273.67 1707.62,-1263.52\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1710.73,-1261.86 1702.2,-1255.57 1704.95,-1265.8 1710.73,-1261.86\"/>\n",
       "</g>\n",
       "<!-- 1459360001904 -->\n",
       "<g id=\"node253\" class=\"node\">\n",
       "<title>1459360001904</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1821,-1192 1721,-1192 1721,-1172 1821,-1172 1821,-1192\"/>\n",
       "<text text-anchor=\"middle\" x=\"1771\" y=\"-1178.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001904&#45;&gt;1459360002000 -->\n",
       "<g id=\"edge257\" class=\"edge\">\n",
       "<title>1459360001904&#45;&gt;1459360002000</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1759.16,-1171.59C1749.31,-1163.77 1735.07,-1152.46 1723.39,-1143.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1725.9,-1140.72 1715.89,-1137.24 1721.55,-1146.2 1725.9,-1140.72\"/>\n",
       "</g>\n",
       "<!-- 1459359483840 -->\n",
       "<g id=\"node254\" class=\"node\">\n",
       "<title>1459359483840</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1821,-1260 1763,-1260 1763,-1228 1821,-1228 1821,-1260\"/>\n",
       "<text text-anchor=\"middle\" x=\"1792\" y=\"-1234.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359483840&#45;&gt;1459360001904 -->\n",
       "<g id=\"edge258\" class=\"edge\">\n",
       "<title>1459359483840&#45;&gt;1459360001904</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1786.59,-1227.55C1783.98,-1220.08 1780.81,-1211.03 1778.02,-1203.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1781.4,-1202.12 1774.79,-1193.84 1774.79,-1204.43 1781.4,-1202.12\"/>\n",
       "</g>\n",
       "<!-- 1459360001952 -->\n",
       "<g id=\"node255\" class=\"node\">\n",
       "<title>1459360001952</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1939,-1192 1839,-1192 1839,-1172 1939,-1172 1939,-1192\"/>\n",
       "<text text-anchor=\"middle\" x=\"1889\" y=\"-1178.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001952&#45;&gt;1459360002000 -->\n",
       "<g id=\"edge259\" class=\"edge\">\n",
       "<title>1459360001952&#45;&gt;1459360002000</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1856.6,-1171.59C1826.12,-1162.74 1780.24,-1149.43 1746.57,-1139.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1747.68,-1136.33 1737.11,-1136.9 1745.73,-1143.05 1747.68,-1136.33\"/>\n",
       "</g>\n",
       "<!-- 1459359484640 -->\n",
       "<g id=\"node256\" class=\"node\">\n",
       "<title>1459359484640</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1918,-1260 1860,-1260 1860,-1228 1918,-1228 1918,-1260\"/>\n",
       "<text text-anchor=\"middle\" x=\"1889\" y=\"-1234.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359484640&#45;&gt;1459360001952 -->\n",
       "<g id=\"edge260\" class=\"edge\">\n",
       "<title>1459359484640&#45;&gt;1459360001952</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1889,-1227.55C1889,-1220.34 1889,-1211.66 1889,-1203.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1892.5,-1203.92 1889,-1193.92 1885.5,-1203.92 1892.5,-1203.92\"/>\n",
       "</g>\n",
       "<!-- 1459360001184 -->\n",
       "<g id=\"node257\" class=\"node\">\n",
       "<title>1459360001184</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1322,-1514 1162,-1514 1162,-1494 1322,-1494 1322,-1514\"/>\n",
       "<text text-anchor=\"middle\" x=\"1242\" y=\"-1500.5\" font-family=\"monospace\" font-size=\"10.00\">NativeBatchNormBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360001184&#45;&gt;1459360165952 -->\n",
       "<g id=\"edge261\" class=\"edge\">\n",
       "<title>1459360001184&#45;&gt;1459360165952</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1274.99,-1493.51C1322.61,-1477.55 1405,-1440.49 1405,-1375 1405,-1375 1405,-1375 1405,-1181 1405,-1141.13 1435.9,-1103.38 1456.93,-1082.31\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1459.34,-1084.84 1464.13,-1075.39 1454.49,-1079.79 1459.34,-1084.84\"/>\n",
       "</g>\n",
       "<!-- 1459325844976&#45;&gt;1459360001184 -->\n",
       "<g id=\"edge262\" class=\"edge\">\n",
       "<title>1459325844976&#45;&gt;1459360001184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1276.59,-1555.62C1270.72,-1547.03 1261.86,-1534.07 1254.58,-1523.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1257.61,-1521.64 1249.08,-1515.36 1251.83,-1525.59 1257.61,-1521.64\"/>\n",
       "</g>\n",
       "<!-- 1459360000992 -->\n",
       "<g id=\"node259\" class=\"node\">\n",
       "<title>1459360000992</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1225,-1638 1125,-1638 1125,-1618 1225,-1618 1225,-1638\"/>\n",
       "<text text-anchor=\"middle\" x=\"1175\" y=\"-1624.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360000992&#45;&gt;1459325844976 -->\n",
       "<g id=\"edge264\" class=\"edge\">\n",
       "<title>1459360000992&#45;&gt;1459325844976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1191.88,-1617.62C1209.15,-1608.03 1236.26,-1592.97 1256.42,-1581.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1257.88,-1584.96 1264.92,-1577.04 1254.48,-1578.84 1257.88,-1584.96\"/>\n",
       "</g>\n",
       "<!-- 1459359483360 -->\n",
       "<g id=\"node260\" class=\"node\">\n",
       "<title>1459359483360</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1237,-1712 1113,-1712 1113,-1680 1237,-1680 1237,-1712\"/>\n",
       "<text text-anchor=\"middle\" x=\"1175\" y=\"-1686.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024, 512, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359483360&#45;&gt;1459360000992 -->\n",
       "<g id=\"edge265\" class=\"edge\">\n",
       "<title>1459359483360&#45;&gt;1459360000992</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1175,-1679.69C1175,-1670.8 1175,-1659.46 1175,-1649.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1178.5,-1649.83 1175,-1639.83 1171.5,-1649.83 1178.5,-1649.83\"/>\n",
       "</g>\n",
       "<!-- 1459360001280 -->\n",
       "<g id=\"node261\" class=\"node\">\n",
       "<title>1459360001280</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1343,-1638 1243,-1638 1243,-1618 1343,-1618 1343,-1638\"/>\n",
       "<text text-anchor=\"middle\" x=\"1293\" y=\"-1624.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001280&#45;&gt;1459325844976 -->\n",
       "<g id=\"edge266\" class=\"edge\">\n",
       "<title>1459360001280&#45;&gt;1459325844976</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1291.44,-1617.62C1290.09,-1609.56 1288.11,-1597.65 1286.4,-1587.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1289.86,-1586.89 1284.77,-1577.61 1282.96,-1588.05 1289.86,-1586.89\"/>\n",
       "</g>\n",
       "<!-- 1459359483760 -->\n",
       "<g id=\"node262\" class=\"node\">\n",
       "<title>1459359483760</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1322,-1712 1264,-1712 1264,-1680 1322,-1680 1322,-1712\"/>\n",
       "<text text-anchor=\"middle\" x=\"1293\" y=\"-1686.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359483760&#45;&gt;1459360001280 -->\n",
       "<g id=\"edge267\" class=\"edge\">\n",
       "<title>1459359483760&#45;&gt;1459360001280</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1293,-1679.69C1293,-1670.8 1293,-1659.46 1293,-1649.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1296.5,-1649.83 1293,-1639.83 1289.5,-1649.83 1296.5,-1649.83\"/>\n",
       "</g>\n",
       "<!-- 1459360001712 -->\n",
       "<g id=\"node263\" class=\"node\">\n",
       "<title>1459360001712</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1065,-1576 965,-1576 965,-1556 1065,-1556 1065,-1576\"/>\n",
       "<text text-anchor=\"middle\" x=\"1015\" y=\"-1562.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001712&#45;&gt;1459360001184 -->\n",
       "<g id=\"edge268\" class=\"edge\">\n",
       "<title>1459360001712&#45;&gt;1459360001184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1050.72,-1555.56C1089.69,-1545.26 1152.23,-1528.73 1195.12,-1517.39\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1195.88,-1520.81 1204.65,-1514.87 1194.09,-1514.04 1195.88,-1520.81\"/>\n",
       "</g>\n",
       "<!-- 1459359483200 -->\n",
       "<g id=\"node264\" class=\"node\">\n",
       "<title>1459359483200</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1031,-1644 973,-1644 973,-1612 1031,-1612 1031,-1644\"/>\n",
       "<text text-anchor=\"middle\" x=\"1002\" y=\"-1618.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359483200&#45;&gt;1459360001712 -->\n",
       "<g id=\"edge269\" class=\"edge\">\n",
       "<title>1459359483200&#45;&gt;1459360001712</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1005.35,-1611.55C1006.93,-1604.26 1008.84,-1595.45 1010.54,-1587.6\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1013.94,-1588.4 1012.64,-1577.89 1007.1,-1586.92 1013.94,-1588.4\"/>\n",
       "</g>\n",
       "<!-- 1459360001424 -->\n",
       "<g id=\"node265\" class=\"node\">\n",
       "<title>1459360001424</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1188,-1576 1088,-1576 1088,-1556 1188,-1556 1188,-1576\"/>\n",
       "<text text-anchor=\"middle\" x=\"1138\" y=\"-1562.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360001424&#45;&gt;1459360001184 -->\n",
       "<g id=\"edge270\" class=\"edge\">\n",
       "<title>1459360001424&#45;&gt;1459360001184</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1154.25,-1555.62C1170.81,-1546.07 1196.75,-1531.11 1216.14,-1519.92\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1217.64,-1523.09 1224.55,-1515.07 1214.14,-1517.03 1217.64,-1523.09\"/>\n",
       "</g>\n",
       "<!-- 1459359482960 -->\n",
       "<g id=\"node266\" class=\"node\">\n",
       "<title>1459359482960</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1107,-1644 1049,-1644 1049,-1612 1107,-1612 1107,-1644\"/>\n",
       "<text text-anchor=\"middle\" x=\"1078\" y=\"-1618.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359482960&#45;&gt;1459360001424 -->\n",
       "<g id=\"edge271\" class=\"edge\">\n",
       "<title>1459359482960&#45;&gt;1459360001424</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1093.45,-1611.55C1101.78,-1603.22 1112.09,-1592.91 1120.7,-1584.3\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1122.93,-1587.02 1127.52,-1577.48 1117.98,-1582.07 1122.93,-1587.02\"/>\n",
       "</g>\n",
       "<!-- 1459164745536 -->\n",
       "<g id=\"node267\" class=\"node\">\n",
       "<title>1459164745536</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1648,-1006 1548,-1006 1548,-986 1648,-986 1648,-1006\"/>\n",
       "<text text-anchor=\"middle\" x=\"1598\" y=\"-992.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459164745536&#45;&gt;1459360166144 -->\n",
       "<g id=\"edge272\" class=\"edge\">\n",
       "<title>1459164745536&#45;&gt;1459360166144</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1594.56,-985.62C1591.54,-977.39 1587.05,-965.13 1583.24,-954.74\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1586.59,-953.72 1579.86,-945.53 1580.02,-956.13 1586.59,-953.72\"/>\n",
       "</g>\n",
       "<!-- 1459359479264 -->\n",
       "<g id=\"node268\" class=\"node\">\n",
       "<title>1459359479264</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1662,-1080 1538,-1080 1538,-1048 1662,-1048 1662,-1080\"/>\n",
       "<text text-anchor=\"middle\" x=\"1600\" y=\"-1054.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 1024, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359479264&#45;&gt;1459164745536 -->\n",
       "<g id=\"edge273\" class=\"edge\">\n",
       "<title>1459359479264&#45;&gt;1459164745536</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1599.54,-1047.69C1599.27,-1038.8 1598.92,-1027.46 1598.63,-1017.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1602.13,-1017.72 1598.33,-1007.83 1595.13,-1017.93 1602.13,-1017.72\"/>\n",
       "</g>\n",
       "<!-- 1459360166096 -->\n",
       "<g id=\"node269\" class=\"node\">\n",
       "<title>1459360166096</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1762,-944 1662,-944 1662,-924 1762,-924 1762,-944\"/>\n",
       "<text text-anchor=\"middle\" x=\"1712\" y=\"-930.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166096&#45;&gt;1459360166000 -->\n",
       "<g id=\"edge274\" class=\"edge\">\n",
       "<title>1459360166096&#45;&gt;1459360166000</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1702.31,-923.62C1693.07,-914.68 1678.92,-900.99 1667.67,-890.1\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1670.12,-887.6 1660.5,-883.17 1665.26,-892.63 1670.12,-887.6\"/>\n",
       "</g>\n",
       "<!-- 1459359478944 -->\n",
       "<g id=\"node270\" class=\"node\">\n",
       "<title>1459359478944</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1739,-1012 1685,-1012 1685,-980 1739,-980 1739,-1012\"/>\n",
       "<text text-anchor=\"middle\" x=\"1712\" y=\"-986.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359478944&#45;&gt;1459360166096 -->\n",
       "<g id=\"edge275\" class=\"edge\">\n",
       "<title>1459359478944&#45;&gt;1459360166096</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1712,-979.55C1712,-972.34 1712,-963.66 1712,-955.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1715.5,-955.92 1712,-945.92 1708.5,-955.92 1715.5,-955.92\"/>\n",
       "</g>\n",
       "<!-- 1459360166288 -->\n",
       "<g id=\"node271\" class=\"node\">\n",
       "<title>1459360166288</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1880,-944 1780,-944 1780,-924 1880,-924 1880,-944\"/>\n",
       "<text text-anchor=\"middle\" x=\"1830\" y=\"-930.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166288&#45;&gt;1459360166000 -->\n",
       "<g id=\"edge276\" class=\"edge\">\n",
       "<title>1459360166288&#45;&gt;1459360166000</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1801.88,-923.62C1771.45,-913.48 1722.74,-897.25 1688.71,-885.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1690.25,-882.73 1679.66,-882.89 1688.04,-889.37 1690.25,-882.73\"/>\n",
       "</g>\n",
       "<!-- 1459359480544 -->\n",
       "<g id=\"node272\" class=\"node\">\n",
       "<title>1459359480544</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1857,-1012 1803,-1012 1803,-980 1857,-980 1857,-1012\"/>\n",
       "<text text-anchor=\"middle\" x=\"1830\" y=\"-986.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359480544&#45;&gt;1459360166288 -->\n",
       "<g id=\"edge277\" class=\"edge\">\n",
       "<title>1459359480544&#45;&gt;1459360166288</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1830,-979.55C1830,-972.34 1830,-963.66 1830,-955.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1833.5,-955.92 1830,-945.92 1826.5,-955.92 1833.5,-955.92\"/>\n",
       "</g>\n",
       "<!-- 1459360166384 -->\n",
       "<g id=\"node273\" class=\"node\">\n",
       "<title>1459360166384</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1815,-814 1715,-814 1715,-794 1815,-794 1815,-814\"/>\n",
       "<text text-anchor=\"middle\" x=\"1765\" y=\"-800.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166384&#45;&gt;1459360166192 -->\n",
       "<g id=\"edge278\" class=\"edge\">\n",
       "<title>1459360166384&#45;&gt;1459360166192</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1755,-793.62C1745.36,-784.59 1730.57,-770.72 1718.9,-759.78\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1721.51,-757.43 1711.82,-753.15 1716.73,-762.54 1721.51,-757.43\"/>\n",
       "</g>\n",
       "<!-- 1459359451472 -->\n",
       "<g id=\"node274\" class=\"node\">\n",
       "<title>1459359451472</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1866,-888 1748,-888 1748,-856 1866,-856 1866,-888\"/>\n",
       "<text text-anchor=\"middle\" x=\"1807\" y=\"-862.5\" font-family=\"monospace\" font-size=\"10.00\"> (512, 512, 3, 3)</text>\n",
       "</g>\n",
       "<!-- 1459359451472&#45;&gt;1459360166384 -->\n",
       "<g id=\"edge279\" class=\"edge\">\n",
       "<title>1459359451472&#45;&gt;1459360166384</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1797.26,-855.69C1791.22,-846.2 1783.41,-833.92 1776.99,-823.83\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1780.06,-822.15 1771.74,-815.59 1774.16,-825.91 1780.06,-822.15\"/>\n",
       "</g>\n",
       "<!-- 1459360166624 -->\n",
       "<g id=\"node275\" class=\"node\">\n",
       "<title>1459360166624</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1887,-752 1787,-752 1787,-732 1887,-732 1887,-752\"/>\n",
       "<text text-anchor=\"middle\" x=\"1837\" y=\"-738.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166624&#45;&gt;1459360166672 -->\n",
       "<g id=\"edge280\" class=\"edge\">\n",
       "<title>1459360166624&#45;&gt;1459360166672</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1826.38,-731.62C1816.04,-722.5 1800.1,-708.45 1787.65,-697.46\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1790.28,-695.11 1780.46,-691.11 1785.65,-700.35 1790.28,-695.11\"/>\n",
       "</g>\n",
       "<!-- 1459359449392 -->\n",
       "<g id=\"node276\" class=\"node\">\n",
       "<title>1459359449392</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1887,-820 1833,-820 1833,-788 1887,-788 1887,-820\"/>\n",
       "<text text-anchor=\"middle\" x=\"1860\" y=\"-794.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359449392&#45;&gt;1459360166624 -->\n",
       "<g id=\"edge281\" class=\"edge\">\n",
       "<title>1459359449392&#45;&gt;1459360166624</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1854.08,-787.55C1851.22,-780.08 1847.75,-771.03 1844.68,-763.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1848,-761.91 1841.15,-753.82 1841.46,-764.41 1848,-761.91\"/>\n",
       "</g>\n",
       "<!-- 1459360166768 -->\n",
       "<g id=\"node277\" class=\"node\">\n",
       "<title>1459360166768</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"2005,-752 1905,-752 1905,-732 2005,-732 2005,-752\"/>\n",
       "<text text-anchor=\"middle\" x=\"1955\" y=\"-738.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166768&#45;&gt;1459360166672 -->\n",
       "<g id=\"edge282\" class=\"edge\">\n",
       "<title>1459360166768&#45;&gt;1459360166672</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1925.94,-731.62C1894.5,-721.48 1844.17,-705.25 1809,-693.9\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1810.2,-690.61 1799.61,-690.87 1808.05,-697.27 1810.2,-690.61\"/>\n",
       "</g>\n",
       "<!-- 1459359449552 -->\n",
       "<g id=\"node278\" class=\"node\">\n",
       "<title>1459359449552</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1982,-820 1928,-820 1928,-788 1982,-788 1982,-820\"/>\n",
       "<text text-anchor=\"middle\" x=\"1955\" y=\"-794.5\" font-family=\"monospace\" font-size=\"10.00\"> (512)</text>\n",
       "</g>\n",
       "<!-- 1459359449552&#45;&gt;1459360166768 -->\n",
       "<g id=\"edge283\" class=\"edge\">\n",
       "<title>1459359449552&#45;&gt;1459360166768</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1955,-787.55C1955,-780.34 1955,-771.66 1955,-763.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1958.5,-763.92 1955,-753.92 1951.5,-763.92 1958.5,-763.92\"/>\n",
       "</g>\n",
       "<!-- 1459360166864 -->\n",
       "<g id=\"node279\" class=\"node\">\n",
       "<title>1459360166864</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1934,-622 1834,-622 1834,-602 1934,-602 1934,-622\"/>\n",
       "<text text-anchor=\"middle\" x=\"1884\" y=\"-608.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166864&#45;&gt;1459360167056 -->\n",
       "<g id=\"edge284\" class=\"edge\">\n",
       "<title>1459360166864&#45;&gt;1459360167056</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1874.62,-601.62C1865.68,-592.68 1851.99,-578.99 1841.1,-568.1\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1843.73,-565.78 1834.18,-561.18 1838.78,-570.73 1843.73,-565.78\"/>\n",
       "</g>\n",
       "<!-- 1459359449792 -->\n",
       "<g id=\"node280\" class=\"node\">\n",
       "<title>1459359449792</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1991,-696 1867,-696 1867,-664 1991,-664 1991,-696\"/>\n",
       "<text text-anchor=\"middle\" x=\"1929\" y=\"-670.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024, 512, 1, 1)</text>\n",
       "</g>\n",
       "<!-- 1459359449792&#45;&gt;1459360166864 -->\n",
       "<g id=\"edge285\" class=\"edge\">\n",
       "<title>1459359449792&#45;&gt;1459360166864</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1918.56,-663.69C1912.02,-654.1 1903.55,-641.67 1896.62,-631.52\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1899.73,-629.86 1891.2,-623.57 1893.95,-633.8 1899.73,-629.86\"/>\n",
       "</g>\n",
       "<!-- 1459360166576 -->\n",
       "<g id=\"node281\" class=\"node\">\n",
       "<title>1459360166576</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"2010,-560 1910,-560 1910,-540 2010,-540 2010,-560\"/>\n",
       "<text text-anchor=\"middle\" x=\"1960\" y=\"-546.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166576&#45;&gt;1459360167152 -->\n",
       "<g id=\"edge286\" class=\"edge\">\n",
       "<title>1459360166576&#45;&gt;1459360167152</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1948.16,-539.59C1938.31,-531.77 1924.07,-520.46 1912.39,-511.19\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1914.9,-508.72 1904.89,-505.24 1910.55,-514.2 1914.9,-508.72\"/>\n",
       "</g>\n",
       "<!-- 1459359449872 -->\n",
       "<g id=\"node282\" class=\"node\">\n",
       "<title>1459359449872</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"2010,-628 1952,-628 1952,-596 2010,-596 2010,-628\"/>\n",
       "<text text-anchor=\"middle\" x=\"1981\" y=\"-602.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359449872&#45;&gt;1459360166576 -->\n",
       "<g id=\"edge287\" class=\"edge\">\n",
       "<title>1459359449872&#45;&gt;1459360166576</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1975.59,-595.55C1972.98,-588.08 1969.81,-579.03 1967.02,-571.04\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1970.4,-570.12 1963.79,-561.84 1963.79,-572.43 1970.4,-570.12\"/>\n",
       "</g>\n",
       "<!-- 1459360166912 -->\n",
       "<g id=\"node283\" class=\"node\">\n",
       "<title>1459360166912</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"2128,-560 2028,-560 2028,-540 2128,-540 2128,-560\"/>\n",
       "<text text-anchor=\"middle\" x=\"2078\" y=\"-546.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459360166912&#45;&gt;1459360167152 -->\n",
       "<g id=\"edge288\" class=\"edge\">\n",
       "<title>1459360166912&#45;&gt;1459360167152</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M2045.6,-539.59C2015.12,-530.74 1969.24,-517.43 1935.57,-507.65\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1936.68,-504.33 1926.11,-504.9 1934.73,-511.05 1936.68,-504.33\"/>\n",
       "</g>\n",
       "<!-- 1459359449952 -->\n",
       "<g id=\"node284\" class=\"node\">\n",
       "<title>1459359449952</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"2107,-628 2049,-628 2049,-596 2107,-596 2107,-628\"/>\n",
       "<text text-anchor=\"middle\" x=\"2078\" y=\"-602.5\" font-family=\"monospace\" font-size=\"10.00\"> (1024)</text>\n",
       "</g>\n",
       "<!-- 1459359449952&#45;&gt;1459360166912 -->\n",
       "<g id=\"edge289\" class=\"edge\">\n",
       "<title>1459359449952&#45;&gt;1459360166912</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M2078,-595.55C2078,-588.34 2078,-579.66 2078,-571.88\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"2081.5,-571.92 2078,-561.92 2074.5,-571.92 2081.5,-571.92\"/>\n",
       "</g>\n",
       "<!-- 1459360167488 -->\n",
       "<g id=\"node285\" class=\"node\">\n",
       "<title>1459360167488</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1711,-200 1635,-200 1635,-180 1711,-180 1711,-200\"/>\n",
       "<text text-anchor=\"middle\" x=\"1673\" y=\"-186.5\" font-family=\"monospace\" font-size=\"10.00\">TBackward0</text>\n",
       "</g>\n",
       "<!-- 1459360167488&#45;&gt;1459359745696 -->\n",
       "<g id=\"edge291\" class=\"edge\">\n",
       "<title>1459360167488&#45;&gt;1459359745696</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1654.88,-179.59C1639.03,-171.36 1615.72,-159.26 1597.38,-149.74\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1599.09,-146.68 1588.6,-145.18 1595.86,-152.89 1599.09,-146.68\"/>\n",
       "</g>\n",
       "<!-- 1459325565536 -->\n",
       "<g id=\"node286\" class=\"node\">\n",
       "<title>1459325565536</title>\n",
       "<polygon fill=\"lightgrey\" stroke=\"black\" points=\"1730,-262 1630,-262 1630,-242 1730,-242 1730,-262\"/>\n",
       "<text text-anchor=\"middle\" x=\"1680\" y=\"-248.5\" font-family=\"monospace\" font-size=\"10.00\">AccumulateGrad</text>\n",
       "</g>\n",
       "<!-- 1459325565536&#45;&gt;1459360167488 -->\n",
       "<g id=\"edge292\" class=\"edge\">\n",
       "<title>1459325565536&#45;&gt;1459360167488</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1678.91,-241.62C1677.97,-233.56 1676.58,-221.65 1675.38,-211.41\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1678.87,-211.14 1674.24,-201.62 1671.92,-211.95 1678.87,-211.14\"/>\n",
       "</g>\n",
       "<!-- 1459359450192 -->\n",
       "<g id=\"node287\" class=\"node\">\n",
       "<title>1459359450192</title>\n",
       "<polygon fill=\"lightblue\" stroke=\"black\" points=\"1724,-336 1636,-336 1636,-304 1724,-304 1724,-336\"/>\n",
       "<text text-anchor=\"middle\" x=\"1680\" y=\"-310.5\" font-family=\"monospace\" font-size=\"10.00\"> (100, 1024)</text>\n",
       "</g>\n",
       "<!-- 1459359450192&#45;&gt;1459325565536 -->\n",
       "<g id=\"edge293\" class=\"edge\">\n",
       "<title>1459359450192&#45;&gt;1459325565536</title>\n",
       "<path fill=\"none\" stroke=\"black\" d=\"M1680,-303.69C1680,-294.8 1680,-283.46 1680,-273.77\"/>\n",
       "<polygon fill=\"black\" stroke=\"black\" points=\"1683.5,-273.83 1680,-263.83 1676.5,-273.83 1683.5,-273.83\"/>\n",
       "</g>\n",
       "</g>\n",
       "</svg>\n"
      ],
      "text/plain": [
       "<graphviz.graphs.Digraph at 0x153c89c6e20>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "import torch\n",
    "import torchviz\n",
    "from torch.autograd import Variable\n",
    "\n",
    "# 假设你的模型是 ResNet\n",
    "model=ResNet50()\n",
    "\n",
    "# 创建一个输入变量\n",
    "x = Variable(torch.randn(1,3,32,32))\n",
    "\n",
    "# 通过模型传递输入\n",
    "y = model(x)\n",
    "\n",
    "# 使用torchviz生成图形，只显示模型的顶层结构\n",
    "torchviz.make_dot(y.mean(), params=dict(list(model.named_parameters())[:1]))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
